Manual:SkinMustache.php/cs

Category:MediaWiki code/cs#SkinMustache.php

Třída SkinMustache je generická třída pro použití se ​​šablonami Mustache. Umožňuje vývojářům vzhledů flexibilitu zobrazovat podkladová data, jakkoli si vybrali. Šablona Moustache je přidružena ke vzhledu, který má být vykreslen, a přijímá data šablony, jak je popsáno níže.

Pro další informace se podívejte na stránku Příručka:Jak vytvořit vzhled MediaWiki.

Template data

Všechna zde uvedená data lze prozkoumat pomocí vzhledu SkinJSON.

Mustache spojený se vzhledem obdrží následující data:

Klíč šablony Typ údaje Použití K dispozici ve verzi MediaWiki
array-sections Section[] Umožňuje vzhledům vykreslit obsah odděleně od těla článku. 1.38
data-logos DataLogos Poskytuje přístup k informacím o logech, jak je popsáno v $wgLogos 1.36
array-indicators DataHtmlObject[] Řada nezpracovaných položek HTML. Lze použít k zobrazení Nápověda:Indikátory stavu stránky 1.35
data-search-box DataSearchBox Používá se k vykreslení vyhledávání (viz níže) 1.35
html-site-notice řetězec (HTML) Proveďte pomocí trojitých závorek pro podporu zobrazení bannerů.

Včetně toho přidává podporu pro upozornění na webu.

1.35
html-user-message řetězec (HTML) Lze použít k zobrazení žluté lišty zpráv, která uživatele upozorní, že v těle článku má zprávy diskusní stránky.

Příklad uživatelské zprávy: File:010405ah.png

1.35
html-title řetězec (HTML) Aby se zobrazil název stránky, musí být vykreslen. Všimněte si, že názvy wikistránek mohou obsahovat určité prvky HTML, například značku <i> pro text kurzívou. HTML neobsahuje značku nadpisu, protože je na vás, kterou značku použijete např. h1 nebo h2.

Pokud má být váš vzhled navržen tak, aby podporoval více jazyků, měli byste také vypsat {{{html-user-language-attributes}}}

1.35
html-subtitle řetězec (HTML) Může být vykreslen pro zobrazení titulků pod stránkou html-title. Ve výchozím nastavení je to prázdný řetězec, ale na určitých stránkách – například na uživatelských podstránkách a s určitými rozšířeními MediaWiki se objeví. Přečtěte si více o titulcích. Podnadpis by měl být považován za blokový prvek, který může mít několik řádků. 1.35
html-body-content řetězec (HTML) Pro zobrazení obsahu stránky je nutné vykreslit 1.35
html-categories řetězec (HTML) Lze vykreslit pro zobrazení kategorií 1.35
html-after-content řetězec (HTML) Obvykle prázdné, ale lze jej použít k povolení vykreslování rozšíření jako RelatedArticles pod článkem (například reklamy). Vložte tento kód HTML na místo, které dává smysl za hlavním obsahem. 1.35
html-undelete-link řetězec (HTML) Musí být vykresleno, pokud chcete, aby váš vzhled podporoval rámeček na stránkách, které byly odstraněny, což umožňuje jejich obnovení. 1.35
html-user-language-attributes řetězec (HTML) Atributy HTML, které odrážejí preferovaný jazyk uživatele a jeho směr. Pokud podporujete jazyky RTL, musí být použito na prvku. Každý potomek prvku zdědí tyto vlastnosti. Přečtěte si více o kódech jazyků ve specifikaci HTML.

Obecně platí, že byste to měli vložit pouze do kořenových uzlů ve vašem souboru skin.mustache.

1.35
link-mainpage řetězec URL hlavní stránky. Může být použit pro odkaz zpět na domovskou stránku 1.36
data-portlets DataPortletsObject Lze použít k vykreslení nabídek, které mohou rozšíření rozšířit a správci webu mohou konfigurovat. Každá nabídka musí být přístupná podle názvu.

Viz níže a v sekci nabídek zobrazení na stránce Příručka:Jak vytvořit vzhled MediaWiki.

1.36
data-portlets-sidebar DataPortletSidebar Lze jej použít k vykreslení nabídek, které se tradičně objevují na postranním panelu aplikace Vector, které mohou rozšíření rozšířit a správci webu konfigurovat. Data jsou rozdělena do prvního portletu a poté do pole dalších portletů, které musí následovat.

S obsahem této nabídky se zachází odděleně od datových portletů, protože tuto nabídku lze konfigurovat uvnitř wiki úpravou lišty. Další informace naleznete na stránce Příručka:Rozhraní/Lišta. Postranní panel může obsahovat různé množství podnabídek, takže je strukturován odlišně od datových portletů.

1.36
data-footer DataFooter Lze použít k vykreslení odkazů v zápatí, které mohou rozšíření rozšířit a správci webu mohou nakonfigurovat. Obvykle to obsahuje odkazy, jako je "mobilní zobrazení", vyloučení odpovědnosti a zásady ochrany osobních údajů, ale lze je nakonfigurovat pomocí LocalSettings.php a rozšíření. Přečtěte si více o přizpůsobení zápatí. 1.36
msg-<message-key> řetězec Vzhled může deklarovat zprávy při registraci vzhledu. Jakákoli deklarovaná zpráva bude přeložena a předána do šablony escape. Zprávy HTML nejsou v současné době podporovány.

Zprávy lze definovat lokálně do vzhledu v i18n/en.json nebo můžete použít kteroukoli ze zpráv definovaných v jádru. Další informace o lokalizaci.

1.36
is-anon boolean true na stránkách, kde uživatel není přihlášen 1.38
is-article boolean true na stránkách, kde je čtená stránka "článek" (např. hlavní jmenný prostor) 1.38
is-specialpage boolean true na stránkách, kde je čtená stránka speciální stránkou, např. Special:Preferences 1.38
is-mainpage boolean true, pokud je stránka hlavní stránkou. 1.38

Nabídky (neboli portlety/portály)

Pro zpětnou kompatibilitu existuje několik typů nabídek, na které je třeba dávat pozor při vykreslování v SkinMustache. Očekává se, že v budoucnu bude pro všechny používán standardizovaný formát menu.

Sekce

Klíč šablony Typ údaje Použití K dispozici ve verzi MediaWiki
toclevel číslo Je to h1, h2, h3? 1.38
line řetězec Nadpis sekce. 1.38
level řetězec 1.38
number řetězec 1.38
index řetězec 1.38
from_title řetězec Přidružená stránka. Možná nadbytečné. 1.38
byteoffset celé číslo Posun bajtů, kde se sekce vyskytuje. 1.38
anchor řetězec Kotevní odkaz 1.38
has-subsections boolean Má tato sekce podsekce? 1.38
is-last-item boolean Je tato sekce poslední aktuální toclevel? 1.38

AttributeData

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
key řetězec Název atributu HTML, např. "href" 1.40
value řetězec Hodnota atributu HTML, např. "/wiki/Link" 1.40

PortletLinkData

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
icon řetězec Název ikony 1.40
array-attributes AttributeData[] Pole všech atributů HTML, které lze zobrazit na odkaz. 1.40
text řetězec Text odkazu 1.40

PortletListItemData

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
html-item řetězec HTML zobrazení položky seznamu a odkazu 1.40
name řetězec ID jedinečné pro tuto konkrétní nabídku (obvykle se nevykresluje, ale může být užitečné pro účely instrumentace) 1.40
id řetězec ID položky nabídky, obvykle vykreslené jako atribut ID na položce seznamu (li) 1.40
class řetězec class atribut položky nabídky, obvykle vykreslený jako atribut ID na položce seznamu (li) 1.40
html řetězec HTML pouze odkazu (viz také array-links) 1.40
array-links PortletLinkData Datová struktura představující odkaz(y) obsažený v položce nabídky. 1.40

PortletData

Nabídky (neboli portlety/portály) ve SkinMustache mají konzistentní datovou strukturu, která vypadá následovně:

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
id řetězec Atribut ID HTML portletu. Musí být na výstupu z důvodu kompatibility s miniaplikacemi a rozšířeními na prvku kontejneru. 1.36
class řetězec Atribut třídy HTML portletu. Musí být na výstupu z důvodu kompatibility s miniaplikacemi a rozšířeními na prvku kontejneru. 1.36
label řetězec Lidsky čitelný název menu. Lze použít pro vykreslení záhlaví nabídky. Obecně je důležité toto zobrazit všem uživatelům při vykreslování skupin nabídek (např. postranní panel, DataPortletSidebar), ale ne pro jednotlivé nabídky (DataPortletsObject).

Doporučujeme, abyste vždy zvážili vykreslení tohoto na stránce, protože tento štítek je důležitý pro čtečky obrazovky a zpřístupnění vašeho vzhledu.

1.36
html-tooltip řetězec (HTML) Další atributy HTML, které by měly být uvedeny spolu s ID a třídou. Může obsahovat atributy přístupového klíče a titulku. 1.36
array-items PortletListItemData Ekvivalent html položek pro vývojáře vzhledů, kteří potřebují větší flexibilitu. 1.40 (9c4f70c22251)
html-items řetězec (HTML) Položky seznamu představující nabídku. Při vykreslování to musíte zabalit do značky seznamu, např. ol nebo ul 1.36
html-after-portal řetězec (HTML) Rozšíření jako UniversalLanguageSelector vyjádřila přání přidat HTML na konec nabídky. Vykreslování je volitelné.

Všimněte si, že navzdory názvu se vývojáři vzhledu mohou rozhodnout vykreslit jej na stejném místě jako html-before-portlet.

Všimněte si, že to není totéž jako html-before-portlet. Pro plnou kompatibilitu rozšíření musíte vykreslit obojí.

1.36
html-before-portal řetězec (HTML) Lze vykreslit, aby rozšíření umožnilo přidat HTML před nabídku. Vykreslování je volitelné.

Všimněte si, že to není totéž jako html-after-portlet. Pro plnou kompatibilitu rozšíření musíte vykreslit obojí.

1.37

DataPortletSidebar

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
data-portlets-first PortletData Musí být použito, pokud váš vzhled podporuje jazyky 1.36
array-portlets-rest PortletData[] Lze použít k povolení rozšíření ovládacích prvků nastavení povrchu mimo kontext Special:Preferences. 1.36

DataPortletsObject

Objekt datových portletů umožňuje přístup ke všem různým nabídkám, které jsou k dispozici pro zobrazení. Nabídky jsou uspořádány do různých skupin. Vývojář vzhledu se může rozhodnout zobrazit každý z nich samostatně, upravit tyto segmenty pomocí háčku SkinTemplateNavigation::Universal, nebo je vynechat. Každá nabídka obsahuje data odpovídající data-portlets-sidebar.

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
data-languages PortletData Musí být použito, pokud váš vzhled podporuje jazyky 1.36
data-user-interface-preferences PortletData Lze použít k povolení rozšíření ovládacích prvků nastavení povrchu mimo kontext Special:Preferences. 1.37
data-user-page PortletData Mělo by být použito k vykreslení odkazu na uživatelskou stránku uživatele a diskusní stránku uživatele. 1.37
data-user-menu PortletData Měl by být použit k tomu, aby byly odkazy osobnímu uživateli, např. stránku s příspěvky uživatelů a sandbox. 1.37
data-notifications PortletData Mělo by se používat k vykreslování upozornění uživatele, např. podpora Echo 1.37
data-namespaces PortletData Musí být použit k poskytnutí přístupu na diskusní stránku. 1.36
data-views PortletData Musí být použit k poskytnutí přístupu k odkazům pro úpravy a historii 1.36
data-actions PortletData Musí být použit k poskytnutí přístupu správcům k ochraně, mazání a přesunutí akcí. 1.36
data-variants PortletData Musí být použito, pokud váš vzhled podporuje jazykové varianty 1.36
data-personal PortletData Nemělo by se používat, pokud používáte data-notifications, data-user-menu, data-user-page nebo data-user-interface-preferences. Ve verzi 1.37 byl tento segment nabídky rozdělen do více segmentů. V nových vzhledech se použití nedoporučuje. 1.36

DataFooterLine

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
id řetězec Atribut HTML ID položky 1.36
className řetězec Třídy CSS pro danou položku, které lze použít. Všimněte si, že tento název vlastnosti není konzistentní s ostatními. V budoucnu může být přejmenován na třídu. 1.36
array-items DataFooterItem (1.36)|PortletListItemData (1.40) Pole položek zápatí k zobrazení 1.36

DataFooterItem

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
name řetězec Jedinečný název/klíč, který můžete použít k identifikaci řádku zápatí od ostatních. 1.36
id řetězec Atribut ID HTML prvku zápatí odvozený z názvu 1.36
html řetězec (HTML) Nezpracovaný kód HTML (obvykle odkaz) 1.36

DataFooter

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
data-info DataFooterLine Obsahuje poslední upravené informace. 1.36
data-places DataFooterLine Používá se k vyjádření soukromí, vyloučení odpovědnosti. Používá MobileFrontend k přidání odkazu na mobilní zobrazení. 1.36
data-icons DataFooterLine Používá se k vykreslení obrázků ikon 1.36

Ostatní

DataHtmlObject

Při práci s tímto typem se očekává, že vytvoříte kontejner s id a class jako atributy a html jako jeho vnitřní HTML. Kontejner, pokud si to přejete, může obsahovat další prvky. Primárním důvodem existence tohoto typu je, že možná budete chtít vykreslit určité položky jako seznamy (prvek `li`) nebo bloky (prvky `div`).

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
id řetězec ID prvku kontejneru 1.35
class řetězec třídy pro kontejnerový prvek 1.35
html řetězec komponenty raw HTML 1.35

DataSearchBox

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
form-action řetězec Kam má formulář odeslat např. /w/index.php 1.35
html-button-search-fallback řetězec (HTML) Tlačítko, které spouští fulltextové vyhledávání. Obvykle např. ve vzhledu Vector je to pro uživatele s JavaScriptem skryté, ale je důležité to zahrnout při zvažování primární akce formuláře (např. co se stane, když uživatel stiskne klávesu ENTER). Například ve vzhledu MonoBooku jsou uživateli vykreslena dvě tlačítka.

Zvažte umístění tohoto prvku za html-button-search a použití selektoru '.client-js .mw-fallbackSearchButton' ke skrytí tohoto prvku.

Renderování je volitelné, pokud renderujete html-button-search a podle uvážení vývojáře vzhledu. Více na stránce html-button-fulltext-attributes.

1.35
html-button-search řetězec (HTML) Tlačítko, které přejde na stránku s přesným názvem, pokud existuje. Pokud je to primární akce formuláře, měli byste zvážit propojení s Special:Search page.

Vykreslení je volitelné, pokud renderujete html-button-search-fallback a podle uvážení vývojáře vzhledu. Více na stránce html-button-go-attributes.

1.35
html-input řetězec (HTML) vstupní prvek vyhledávání se zástupným textem 1.35
page-title řetězec (HTML) Jedná se o input[type=hidden] poskytující lokalizovaný název pro vyhledávání, např. Special:Search. Aby váš formulář fungoval bez JavaScriptu, musíte jej vykreslit, protože jinak vyhledávací formulář nebude vědět, kam se má odeslat.

Všimněte si, že byste tento kód HTML neměli kódovat napevno, protože některá rozšíření mohou změnit výchozí stránku vyhledávání, například Extension:MediaSearch.

1.35
html-input-attributes řetězec (HTML) Data šablony pomocníka, která lze použít místo 'html-input' k vykreslení vstupu vyhledávání, který je kompatibilní s nainstalovanými rozšířeními a kódem MediaWiki. 1.38
html-button-go-attributes řetězec (HTML) Data šablony pomocníka, která lze použít místo 'html-button-search' k vykreslení tlačítka nebo prvku input[type=submit], který je kompatibilní s nainstalovanými rozšířeními a kódem MediaWiki. 1.38
html-button-fulltext-attributes řetězec (HTML) Data šablony pomocníka, která lze použít místo 'html-button-search-fallback' k vykreslení tlačítka nebo prvku input[type=submit], který je kompatibilní s nainstalovanými rozšířeními a kódem MediaWiki. 1.38

DataLogos

Všimněte si, že tato datová struktura může být rozšířena o rozšíření a konfiguraci webu v LocalSettings.php

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
icon řetězec Cesta ke čtvercové ikoně 1.35
1x řetězec Cesta ke čtvercové ikoně v rozlišení 1x 1.35
2x řetězec Cesta ke čtvercové ikoně v rozlišení 2x 1.35
wordmark LogoObject Pro textové logo např. Wikipedie, svobodná encyklopedie 1.35
tagline LogoObject Slogan pro web, např. "Svobodná encyklopedie".

Nezaměňujte s {{msg-tagline}}, který vykresluje zprávu nazvanou "tagline" (popis), nicméně to lze použít jako dobrou záložní reklamu, když není slogan definován

například

{{#data-logos}} {{! přístup k datům loga }}
{{#tagline}} {{! slogan je definován! }}
<img src="{{src}}">
{{/tagline}}
{{^tagline}} {{! slogan není definován! }}
{{msg-tagline}} {{! vykreslí zprávu na její místo }}
{{/tagline}}
1.35

LogoObject

Všimněte si, že tato datová struktura může být rozšířena o rozšíření a konfiguraci webu v LocalSettings.php

Klíč šablony Datový typ Použití K dispozici ve verzi MediaWiki
src řetězec URL ke komponentě loga 1.35
width číslo Šířka v pixelech 1.35
height číslo Výška v pixelech 1.35
style řetězec Hodnota atributu stylu, která vyjadřuje výšku a šířku v em na základě výchozí velikosti písma prohlížeče 16 pixelů. Lze použít k úpravě měřítka log se změnami velikosti textu prohlížeče. 1.38
Category:MediaWiki code/cs