Extension:Variables/cs

Rozšíření Variables umožňuje definovat proměnnou na stránce, použít ji později na stejné stránce nebo zahrnutých šablonách, změnit její hodnotu, případně na hodnotu danou výrazem ve smyslu staré hodnoty atd. .

Podobá se šabloně, je pouze velmi jednoduché a má rozsah pouze na jednu stránku. Takže na stránce můžete použít mnoho proměnných, aniž byste zpomalili wiki s velkým množstvím šablon. Pro dosažení nejlepších výsledků zkombinujte toto rozšíření s rozšířením.



Přiřadí hodnotu specifiedvalue (již existující nebo tímto zavedenou) proměnné variablename.


 * Example:  vytváří  

Funguje přesně jako, ale vytiskne se ovlivněná hodnota.


 * Příklad: vytváří 



Hodnota proměnné variablename je vytvořena pomocí Pokud není definována, vytvoří se prázdný řetězec. Nezobrazuje chybovou zprávu.

Je možné získat výchozí hodnotu pro případ, že proměnná není definovaná nebo je neplatná:



To je ekvivalentní s:

ale je to mnohem kratší a lépe uspořádáno. Před verzí 2.0 však byla výchozí hodnota vždy rozšířena. Od verze 2.0 se standardně rozšiřuje pouze v případě, že je skutečně používána.

Hodnotu lze použít ve funkcích analyzátoru atd.


 * vrátí 1, pokud je proměnná již definována. Pokud proměnná není definována, návratová hodnota je neplatná.

Podporuje druhý a třetí parametr pro nahrazení těchto hodnot.

To je ekvivalentní s:



ale je to mnohem kratší a lépe uspořádáno. Před verzí 2.5 však byly obě vždy rozšířeny. Od verze 2.5 se hodnoty if a else rozšíří pouze tehdy, když jsou jejich hodnoty skutečně zadány.

Experimentální funkce představená ve Variables 2.0. Tato funkce vypíše konečnou, poslední hodnotu proměnné na konci vykreslování stránky. Hodnota bude přirozeně vložena poté, co analyzátor projde celým označením wiki, takže tuto funkci nelze použít v jiných funkcích, protože se očekává, že bude použita správná hodnota. Příklad:



Hodnota default (výchozí) bude použita, pokud proměnná ve fázi vykreslování poslední stránky neexistuje nebo pokud je její hodnotou prázdný řetězec. Výchozí hodnota se rozšíří přímo tam, kde je funkce použita, takže parametr bude rozšířen, i když to nebude potřeba.

Příklady
Pro použití  musí být také nainstalováno .

Výpočet : Přičíst jedna k n:

Konfigurace
Toto rozšíření poskytuje dva konfigurační parametry:


 * Umožňuje zakázat rámec analyzátoru, který je rozšířením označen jako nestálý, tj. zakázat ukládání šablon do mezipaměti.
 * Výchozí:
 * Výchozí:


 * Umožňuje zakázat určité funkce analyzátoru poskytované tímto rozšířením.
 * Výchozí:
 * Příklad:
 * Příklad:

Kompatibilita
Doporučená verze rozšíření Variables pro poslední vydání MediaWiki je uvedena níže. Starší verze rozšíření mohou fungovat také, ale nejsou testovány pro nová vydání MediaWiki.

Alternativy
Protože toto rozšíření nebude povoleno pro wiki provozované nadací Wikimedia Foundation (WMF), zde jsou některé alternativy:


 * Pokud používáte proměnné jako mezipaměť pro složité operace, můžete převést sekci, kde je potřebujete, na šablonu a místo toho předat požadované informace jako parametry šablony. Toto bude fungovat, dokud nedosáhnete limitu hloubky rozšíření, které lze v případě potřeby zvýšit.
 * Pokud používáte proměnné k provádění složitějších operací se šablonami, než je možné s jednoduchým, a pokud máte dostatečná oprávnění na serveru, můžete místo toho použít funkci Lua Scribunto. Možná nebudete moci nainstalovat Scriunto na sdílený hosting. Všimněte si, že to nepřidává podporu pro globální proměnné. však přidává rozhraní Scriunto pro rozšíření Variables.
 * Nepoužívejte proměnné, místo toho duplikujte informace, které potřebujete, jako proměnnou. Pokud jsou tyto informace získány složitým voláním šablony, může utrpět výkon. To bude fungovat, dokud nedosáhnete limitu počtu uzlů.
 * If you require variables just for autonumbering, you could look into.



Související odkazy

 * - vytváří nové proměnné ve smyslu MediaWiki
 * — obsahuje funkce, které umožňují používat smyčky
 * — vytváří pole a poskytuje funkce pole (jako je vyhledávání, rozdělení a řazení) a operace nastavení (jako je intersect, union a diff)
 * — nové funkce parseru pro práci s hashovacími tabulkami v MediaWiki
 * — nové funkce parseru pro práci s hashovacími tabulkami v MediaWiki