Všechny možné prvky HTML by měly být stylizovány podle vašeho motivu (pokud se nejedná o podřízený motiv), a to jak v obsahu příspěvku / stránky, tak v upravte obsah.
- Tabulky, titulky, obrázky, seznamy, uvozovky atd.
Velmi se doporučuje přidat styly vhodné pro tisk.
- Můžete zahrnout šablonu stylů tisku s media = „print“ nebo přidat do bloku tiskových médií ve své hlavní šabloně stylů.
Soubor funkcí
Motiv může volitelně použít soubor funkcí, který se nachází v podadresáři motivu a má název functions.php. Tento soubor v zásadě funguje jako plugin, a pokud je přítomen v motivu, který používáte, automaticky se načte během inicializace WordPress (pro stránky administrátora i externí stránky). Navrhovaná použití pro tento soubor:
- Zařaďte fronty stylů a skriptů motivů. Viz wp_enqueue_scripts.
- Povolte funkce motivů, jako jsou postranní panely, navigační nabídky, miniatury příspěvků, formáty příspěvků, vlastní záhlaví, vlastní pozadí a další.
- Definujte funkce používané v několika souborech šablon vašeho téma.
- Vytvořte nabídku možností, která majitelům stránek poskytne možnosti barev, stylů a dalších aspektů vašeho motivu.
Výchozí téma WordPress obsahuje funkce. php soubor, který definuje mnoho z těchto funkcí, takže jej možná budete chtít použít jako model. Protože functions.php v zásadě funguje jako plugin, je seznam funkcí Function_Reference tím nejlepším místem pro získání dalších informací o tom, co můžete s tímto souborem dělat.
Poznámka k rozhodnutí, kdy přidat funkce do functions.php nebo ke konkrétnímu pluginu: Možná zjistíte, že potřebujete stejnou funkci, aby byla k dispozici více než jednomu nadřazenému tématu. Pokud tomu tak je, měla by být funkce vytvořena v pluginu namísto functions.php pro konkrétní téma. To může zahrnovat značky šablon a další specifické funkce. Funkce obsažené v zásuvných modulech uvidí všechna témata.
Soubory šablon
Šablony jsou zdrojové soubory PHP, které se používají ke generování stránek požadovaných návštěvníky, a jsou vydávány jako HTML. Soubory šablon jsou tvořeny značkami šablon HTML, PHP a WordPress.
Pojďme se podívat na různé šablony, které lze definovat jako součást motivu.
WordPress vám umožňuje definovat samostatné šablony pro různé aspekty vašeho webu. Je však zásadní, aby všechny tyto různé soubory šablon pro váš web plně fungovaly. Šablony jsou vybírány a generovány na základě hierarchie šablon, v závislosti na tom, jaké šablony jsou k dispozici v konkrétním tématu.
Jako téma vývojář, můžete si zvolit míru přizpůsobení, kterou chcete implementovat pomocí šablon. Například jako extrémní případ můžete použít pouze jeden soubor šablony s názvem index.php jako šablonu pro všechny stránky generované a zobrazené webem. běžnější použití je mít různé soubory šablon generovat různé výsledky, aby bylo možné maximální přizpůsobení.
Seznam souborů šablon
Zde je seznam souborů motivů rozpoznaných WordPressem. Samozřejmě, váš motiv může obsahovat jakékoli další šablony stylů, obrázky nebo soubory. Nezapomeňte, že následující mají pro WordPress zvláštní význam – další informace viz Hierarchie šablon.
style.css Hlavní šablona stylů. Toto musí být součástí vašeho motivu a musí obsahovat informační záhlaví vašeho motivu. rtl.css Šablona stylů rtl. To bude zahrnuto automaticky, pokud je směr textu webu zprava doleva. To lze vygenerovat pomocí pluginu RTLer. Index.php Hlavní šablona. Pokud vaše téma poskytuje vlastní šablony, musí být přítomen index.php. comments.php Šablona komentářů. front-page.php Šablona titulní stránky. home.php Šablona domovské stránky, která je ve výchozím nastavení přední stranou.Pokud používáte statickou přední stránku, je to šablona pro stránku s nejnovějšími příspěvky. single.php Šablona jednoho příspěvku. Používá se, když je dotazován jeden příspěvek. Pro tuto a všechny ostatní šablony dotazů se používá index.php, pokud šablona dotazu není k dispozici. single- {post-type} .php Šablona jednoho příspěvku použitá při dotazování jednoho příspěvku z vlastního typu příspěvku. Například single-book.php by byl použit pro zobrazení jednotlivých příspěvků z vlastního typu příspěvku s názvem „kniha“. index.php se používá, pokud není k dispozici šablona dotazu pro vlastní typ příspěvku. page.php Šablona stránky. Používá se, když je dotazována jednotlivá stránka. category.php Šablona kategorie. Používá se, když je dotazována kategorie. tag.php Šablona značky. Používá se při dotazování značky. taxonomy.php Pojem šablona. Používá se, když je dotazován termín ve vlastní taxonomii. author.php Šablona autora. Používá se, když je dotazován autor. date.php Šablona data a času. Používá se při dotazu na datum nebo čas. Rok, měsíc, den, hodina, minuta, sekunda. archive.php Šablona archivu. Používá se, když je dotazována kategorie, autor nebo datum. Všimněte si, že tato šablona bude přepsána kategorie.php, author.php a date.php pro jejich příslušné typy dotazů. search.php Šablona výsledků hledání. Používá se při vyhledávání. attachment.php Šablona přílohy. Používá se při prohlížení jedné přílohy. image.php Šablona přílohy obrázku. Používá se při prohlížení jedné obrázkové přílohy. Pokud není k dispozici, použije se příloha.php. 404.php Šablona 404 nenalezena. Používá se, když WordPress nemůže najít příspěvek nebo stránku, která odpovídá dotazu.
Tyto soubory mají ve vztahu k WordPressu zvláštní význam, protože se používají jako náhrada za index.php, jsou-li k dispozici, podle hierarchie šablon a pokud odpovídající podmíněná značka vrací hodnotu true. Pokud se například zobrazuje pouze jeden příspěvek, funkce is_single () vrací hodnotu „true“ a pokud je v aktivním motivu soubor single.php, použije se tato šablona ke generování stránky.
Základní šablony
Téma WordPress se minimálně skládá ze dvou souborů:
Oba tyto soubory jdou do adresáře Theme. Soubor šablony index.php je velmi flexibilní. Může být použit k zahrnutí všech odkazů na záhlaví, postranní panel, zápatí, obsah, kategorie, archivy, vyhledávání, chyby a jakoukoli jinou stránku vytvořenou ve WordPressu.
Nebo jej lze rozdělit na modulární šablonu soubory, z nichž každý přebírá část pracovní zátěže. Pokud neposkytnete další soubory šablon, WordPress může mít výchozí soubory nebo funkce pro provádění svých úkolů. Pokud například neposkytnete soubor šablony searchform.php, WordPress má výchozí funkci pro zobrazení vyhledávacího formuláře.
Typické soubory šablony zahrnují:
- komentáře. php
- comments-popup.php
- footer.php
- header.php
- sidebar.php
Pomocí těchto souborů šablon můžete vložit značky šablon do hlavního souboru index.php a zahrnout tyto další soubory tam, kde chcete, aby se zobrazily na konečné generované stránce.
Zde je příklad zahrnout použití:
<?php get_sidebar(); ?><?php get_footer(); ?>
Výchozí soubory pro některé funkce šablon mohou být zastaralé nebo nemusí být k dispozici, a tyto soubory byste měli uvést ve svém motivu. Od verze 3.0 jsou zastaralé výchozí soubory umístěny v wp-includes/theme-compat
. Například byste měli poskytnout header.php pro funkci get_header (), aby fungovala bezpečně, a comments.php pro funkci comments_template ().
Další informace o tom, jak tyto různé šablony fungují a jak generovat různé informace v nich, přečtěte si dokumentaci Šablony.
Šablony vlastních stránek
Soubory definující každou šablonu stránky najdete ve vašem adresáři Témata. Chcete-li vytvořit novou vlastní šablonu stránky pro stránku, musíte vytvořit soubor. Pojďme zavolat naši první šablonu stránky pro naši stránku snarfer.php. Na začátek souboru snarfer.php vložte následující:
<?php/*Template Name: Snarfer*/?>
Výše uvedené kód definuje tento soubor snarfer.php jako šablonu „Snarfer“. Přirozeně může být „Snarfer“ nahrazen většinou jakéhokoli textu, aby se změnil název šablony stránky. Název této šablony se objeví v editoru motivů jako odkaz k úpravě tohoto soubor.
Soubor lze pojmenovat téměř cokoli s příponou .php (viz vyhrazené názvy souborů motivů pro názvy souborů, které byste neměli používat; jedná se o speciální názvy souborů, které si WordPress vyhrazuje pro konkrétní účely).
To, co následuje po výše uvedených pěti řádcích kódu, je na vás. Zbytek kódu, který napíšete, bude řídit, jak se budou zobrazovat stránky, které používají šablonu stránky Snarfer. Popis různých funkcí šablon WordPress najdete v části Značky šablon. můžete použít k tomuto účelu. Možná se vám bude hodit zkopírovat nějakou jinou šablonu (například page.php nebo index.php) do snarfer.php a poté přidejte výše uvedených pět řádků kódu na začátek souboru.Tímto způsobem budete muset pouze změnit kód HTML a PHP, místo toho, abyste jej vytvořili úplně od začátku. Příklady jsou uvedeny níže. Jakmile vytvoříte šablonu stránky a umístíte ji do adresáře motivu, bude k dispozici jako volba při vytváření nebo úpravách stránky. (Poznámka: Při vytváření nebo úpravách stránky se možnost Šablona stránky nezobrazí, pokud výše uvedeným způsobem je definována alespoň jedna šablona.)
Soubory šablon založené na dotazech
WordPress může načíst různé šablony pro různé typy dotazů. To lze provést dvěma způsoby: jako součást vestavěné hierarchie šablon a prostřednictvím použití podmíněných značek ve smyčce souboru šablony.
Chcete-li použít hierarchii šablon, musíte v zásadě poskytnout speciální soubory šablon, které bude automaticky použito k přepsání index.php. Například pokud váš motiv poskytuje šablonu nazvanou category.php a je dotazována kategorie, načte se místo index.php category.php. Pokud není category.php k dispozici, index.php se používá jako obvykle.
V Hierarchii šablon můžete získat ještě konkrétnější informace poskytnutím ile volal například category-6.php – tento soubor bude použit spíše než category.php při generování stránky pro kategorii, jejíž ID číslo je 6. (ID kategorie najdete v Manage > Kategorie, pokud jste přihlášeni jako správce webu ve WordPressu verze 2.3 a nižší. Ve WordPress 2.5 byl sloupec ID odstraněn z administračních panelů. ID kategorie můžete najít kliknutím na „Upravit kategorii“ a hledáním hodnoty cat_ID v řádku adresy URL. Bude vypadat „… categories.php? Action = edit & cat_ID = 3″, kde „3“ je id kategorie). Podrobnější pohled na to, jak tento proces funguje, najdete v části Šablony kategorií.
Pokud váš motiv potřebuje mít ještě větší kontrolu nad tím, které soubory šablon se používají, než jaké poskytuje hierarchie šablon, můžete použít Podmíněné Značky. Podmíněná značka v zásadě kontroluje, zda je určitá konkrétní podmínka v rámci smyčky WordPress pravdivá, a poté můžete načíst konkrétní šablonu nebo na základě této podmínky umístit nějaký konkrétní text na obrazovku.
Pro například pro vygenerování charakteristické šablony stylů v příspěvku, který se nachází pouze v určité kategorii, může kód vypadat takto:
Nebo pomocí dotazu může vypadat takto:
<?php$post = $wp_query->post;if ( in_category( "9" ) ) { get_template_part( "single2" );} else { get_template_part( "single1" );}?>
V obou případech tento příklad kódu způsobí použití různých šablon v závislosti na kategorii konkrétního zobrazeného příspěvku. Podmínky dotazu se neomezují pouze na kategorie, ale všechny možnosti najdete v článku Podmíněné značky.
Definování vlastních šablon
K definování je možné použít systém pluginů WordPress další šablony, které se zobrazují na základě vašich vlastních vlastních kritérií. Této pokročilé funkce lze dosáhnout pomocí akčního háku „template_include“. Další informace o vytváření pluginů najdete v odkazu na Plugin API.
Včetně souborů šablon
Chcete-li načíst jinou šablonu (kromě záhlaví, postranního panelu, zápatí, které mají předdefinované zahrnuté příkazy jako get_header ()) do šablony, můžete použít get_template_part (). To motivu usnadňuje opětovné použití částí kódu.
Odkazy na soubory ze šablony
Při odkazování na jiné soubory ve stejném motivu se vyhněte pevně zakódovaným identifikátorům URI a cestám k souborům. Místo toho odkazujte na identifikátory URI a cesty k souborům pomocí bloginfo (): viz Odkazy na soubory ze šablony.
Všimněte si, že identifikátory URI použité v šabloně stylů jsou relativní k šabloně stylů, nikoli ke stránce odkazující na šablonu stylů. Pokud například do svého motivu zahrnete obrázky / adresář, musíte v CSS zadat pouze tento relativní adresář, například takto:
h1 { background-image: url(images/my-background.jpg);}
Háčky Plugin API
Při vývoji motivů je dobré mít na paměti, že váš motiv by měl být nastaven tak, aby fungoval dobře s jakýmikoli pluginy WordPress, které by se uživatelé mohli rozhodnout nainstalovat. Pluginy přidávají funkce do WordPress pomocí „Akce Hooks „(další informace najdete v rozhraní Plugin API).
Většina Action Hooků je v základním PHP kódu WordPressu, takže váš motiv nemusí mít žádné speciální tagy, aby fungovaly. Ale pár Action Háčky musí být ve vašem motivu, aby mohly pluginy zobrazovat informace přímo v záhlaví, zápatí, postranním panelu nebo v těle stránky. Zde je seznam speciálních značek šablon akce Hook, které musíte zahrnout:
wp_enqueue_scripts Používá se v souboru funkcí motivu. Používá se k načtení externích skriptů a šablon stylů. wp_head () Přejde do < head > prvek motivu v header.php. Příklad použití pluginu: přidat kód JavaScript. wp_footer () Přejde do souboru footer.php, těsně před závěrečnou značku < / body >. Příklad použití pluginu: vložte kód PHP, který je třeba spustit po všem ostatním, ve spodní části zápatí.Velmi běžně se používá k vložení kódu webové statistiky, například Google Analytics. wp_meta () Typicky jde v < li > Meta < / li > část nabídky nebo postranního panelu motivu; šablona sidebar.php. Příklad použití pluginu: zahrnout rotující reklamu nebo cloud tagu. Comment_form () Přechází přímo do souboru comments.php “ uzavírací značka (< / div >). Příklad použití pluginu: zobrazení náhledu komentáře.
Pro příklad použití v reálném světě najdete tyto háčky pluginů obsažené ve výchozích šablonách motivu.
API přizpůsobení motivu
Od WordPress 3.4, nového Funkce Přizpůsobení motivu je ve výchozím nastavení k dispozici téměř pro všechna témata WordPress. Stránka Správce přizpůsobení motivu je automaticky naplněna možnostmi, pro které motiv deklaruje podporu pomocí add_theme_support () nebo pomocí rozhraní API pro nastavení, a umožňuje správcům zobrazit nestálé náhledy změn, které provedou v reálném čase.
Vývojáři motivů a pluginů, kteří mají zájem o přidání nových možností na stránku Přizpůsobení motivu motivu, by si měli přečíst dokumentaci k API přizpůsobení motivu. Další výukové programy k rozhraní API přizpůsobení motivu jsou k dispozici na webových stránkách Ottopress.com. Nedůvěryhodná data
Měli byste uniknout dynamicky generovanému obsahu ve vašem motivu, zejména obsahu, který je výstupem na atributy HTML. Jak je uvedeno ve standardech WordPress Coding Standards, text, který jde do atributů, by měl být spuštěn pomocí esc_attr (), takže jediný nebo uvozovky neukončí hodnotu atributu a nezruší platnost XHTML a nezpůsobí problém se zabezpečením. Běžnými místy ke kontrole jsou atributy titulu, alt a hodnoty.
Existuje několik speciálních značek šablon pro běžné případy Je nutný bezpečný výstup. Jeden takový případ zahrnuje výstup názvu příspěvku do atributu title pomocí the_title_attribute () namísto the_title (), aby nedošlo k chybě zabezpečení. Zde je příklad správného úniku atributu title odkazu odkazu na příspěvek při použití překládatelného textu:
<a href="<?php the_permalink(); ?>" title="<?php sprintf( __( "Permanent Link to %s", "theme-name" ), the_title_attribute( "echo=0" ) ); ?>"><?php the_title(); ?></a>
Translation Translation / I18n
Chcete-li zajistit plynulý přechod na jazykovou lokalizaci, použijte k zabalení veškerého překládatelného textu v souborech šablon funkce i18n založené na WordPress gettext. To usnadňuje překladovým souborům připojení a překlad štítků, nadpisů a dalšího textu šablony aktuální jazyk stránky. Více se dozvíte na WordPress Localization and I18n for WordPress Developers.
Třídy motivů
Implementujte následující značky šablon a přidejte atributy třídy generované WordPress k prvkům body, příspěvku a komentáře. U tříd příspěvků platí pouze pro prvky v rámci The Loop.
- body_class ()
- post_class ()
- komentář_class ()
Kontrolní seznam souborů šablon
Při vývoji motivu zkontrolujte soubory šablon podle následujících standardů souborů šablon.
Záhlaví dokumentu (header.php)
- Použijte správný DOCTYPE.
- Úvodní značka < html > by měla obsahovat language_attributes ( ).
- Prvek charset < meta > by měl být umístěn před vše ostatní, včetně < title > prvek.
- Pomocí bloginfo () nastavte < meta > charsetové a popisové prvky.
- Pomocí wp_title () nastavte < nadpis > prvek. Podívejte se proč.
- Pomocí odkazů automatického zdroje přidejte odkazy na zdroje.
- Přidejte volání wp_head () před zavíracím < / head > značka. Pluginy používají tento akční hák k přidávání vlastních skriptů, seznamů stylů a dalších funkcí.
- Nepropojujte šablony stylů motivů v šabloně záhlaví. Místo toho použijte akční háček wp_enqueue_scripts ve funkci motivu.
Zde je příklad správně naformátované oblasti hlav vyhovující HTML5:
Navigační nabídky (header.php )
- Hlavní navigace motivu by měla podporovat vlastní nabídku s wp_nav_menu ().
- Nabídky by měly podporovat názvy dlouhých odkazů a velké množství položek seznamu. Tyto položky by neměly narušit design ani rozvržení.
- Položky podřízené nabídky by se měly zobrazovat správně. Pokud je to možné, podporujte styly rozevírací nabídky pro položky podřízené nabídky. Rozbalovací nabídky umožňující zobrazení hloubky nabídky namísto zobrazení nejvyšší úrovně.
- Téma by mělo být co nejvíce widgetizováno. Jakákoli oblast v rozvržení, která funguje jako widget (tag cloud, blogroll, seznam kategorií) nebo může přijímat widgety (postranní panel), by měla povolit widgety.
- Obsah, který se ve výchozím nastavení zobrazuje v oblastech se widgetem (napevno) například do postranního panelu) by měly zmizet, když jsou widgety povoleny z Appearance > widgetů.
Zápatí (footer.php)
- Použijte volání wp_footer (), které se zobrazí těsně před zavřením značky těla.
<?php wp_footer();
read more