Child theme použijte pro prezentační úpravy rodičovské šablony, které mají zůstat i po její aktualizaci. Upřednostněte podporovaná nastavení, hooky a malé změny CSS; šablonový soubor kopírujte pouze při nutné strukturální úpravě. Každý override evidujte a po aktualizaci rodiče jej porovnejte s novou verzí. Zastaralý override odstraňte, jakmile rodič stejnou potřebu podporuje nativně. Kompatibilitu vždy ověřte ve stagingu.
Child theme ve WordPressu umožňuje upravit rodičovskou šablonu vzhledu bez přímého přepisování jejích souborů. Aktualizace rodiče pak nesmaže vlastní změny. To však neznamená, že child theme automaticky vyřeší kompatibilitu. Zkopírovaná šablona může časem obejít bezpečnostní opravu nebo nový markup a vrstva přepisů CSS se může změnit v nepřehledný boj se specificitou.
Child theme je vhodná pro kontrolované prezentační změny podporované rodičovské šablony. Není náhradou za plugin pro obchodní logiku ani univerzální opravou nekvalitního produktu. Tento návod ukazuje minimální strukturu, načítání assetů, bezpečné přepisy, testování aktualizací a situace, kdy je lepší použít hook, vlastní plugin nebo samostatnou šablonu.
Child theme volte pouze pro správný typ změny
Nejprve vyzkoušejte možnosti nadřazené šablony, globální styly a podporované hooky. Child theme dává smysl, když potřebujete vlastní styl, šablonu nebo prezentační funkci vázanou na daný design. Pokud úprava registruje trvalý typ obsahu, integrační endpoint nebo pravidlo checkoutu, patří do pluginu, aby nezmizela spolu s šablonou.
Při desítkách hlubokých přepisů posuďte, zda rodičovská šablona zůstává vhodným základem. Child theme dědí její architekturu, výkon i rozhodnutí. Pokud většinu vrstev rušíte, samostatná šablona může být čitelnější a levnější na údržbu. Rozhodnutí založte na inventáři změn, ne pouze na rychlosti prvního prototypu.
Vytvořte minimální a verzovanou strukturu
Šablona potřebuje platnou hlavičku stylu s vazbou na přesný adresář rodičovské šablony. Všechny vlastní soubory uchovávejte ve verzovacím systému a uveďte jejich účel. Nekopírujte celý rodičovský balík. Každá zbytečná kopie se stává budoucím rozdílem, který musí tým při aktualizaci posuzovat.
Konfiguraci a build proces zdokumentujte tak, aby bylo možné artefakt vytvořit bez lokálních tajemství autora. Editor souborů v produkci vypněte podle provozního modelu. Číslo verze vlastního assetu mění cache při vydání; náhodné query parametry při každém načtení snižují účinnost cache.
- Pouze potřebné vlastní soubory
- Jasná vazba na nadřazené téma
- Verzování assetů při vydání
- Zdokumentovaný build a nasazení
Načítejte styly a skripty přes podporované API
Assety registrujte a zařazujte (enqueue) přes WordPress API se správnými závislostmi. Nespoléhejte na pevné pořadí tagů link vložených do hlavičky. Ověřte, zda rodičovská šablona načítá svůj styl sama; slepé přidání může způsobit duplicitu. Název handle a verze ovlivňují pořadí i cache.
Vlastní JavaScript načítejte pouze na stránkách, kde se používá, a předávejte mu data bezpečným mechanismem. Inline skript s obsahem z nastavení potřebuje správné kódování a nemá obsahovat tajemství. CSS přepisy organizujte podle komponent a po aktualizaci designu odstraňte zastaralá pravidla.
Přepisujte šablony co nejmenším zásahem
Pokud rodičovská šablona nabízí hook nebo filtr, malá cílená změna se obvykle snáze přenáší mezi verzemi než celá zkopírovaná šablona. Kopii použijte, když potřebujete změnit strukturu, a u souboru zapište původní verzi a důvod. Neupravujte současně stejný výstup více mechanismy bez dokumentace.
U WooCommerce nebo jiného pluginu rozlišujte override šablony pluginu od rodičovské šablony vzhledu. Každá vrstva má vlastní upozornění na zastarání. Po aktualizaci porovnejte upstream diff, přeneste relevantní bezpečnostní změny a změny přístupnosti a znovu otestujte dynamické stavy, nikoli jen statický screenshot.
Aktualizujte rodiče přes staging a regresní seznam
Před aktualizací si přečtěte seznam změn, vytvořte zálohu a nasazujte na staging s kopií reprezentativního obsahu. Projděte navigaci, šablony, formuláře, responzivní body zlomu, editor a vlastní hooky. Sledujte upozornění PHP, konzoli, vizuální rozdíly a hlášení o zastaralých souborech.
Po opravě aktualizujte registr overridů a odstraňte ty, které už rodičovská šablona řeší nativně. Nasazení proveďte s možností návratu a vyčistěte jen relevantní cache. Child theme je udržitelný tehdy, když je rozdíl oproti rodičovské šabloně malý, srozumitelný a pravidelně revidovaný, nikoli když jej jen aktualizace nikdy nepřepíše.
Časté dotazy
Smaže aktualizace rodičovské šablony child theme?
Ne, soubory child theme zůstanou. Aktualizace však může změnit markup, hooky nebo API, na kterých úpravy závisejí, proto je třeba kompatibilitu vždy otestovat.
Patří vlastní funkce do child theme, nebo do pluginu?
Prezentační funkce vázaná na vzhled může patřit do child theme. Trvalá obchodní logika, obsahový model nebo integrace patří do pluginu, aby přežily změnu šablony.
Je třeba kopírovat všechny soubory rodičovské šablony?
Ne. Kopírujte pouze šablonu, kterou musíte strukturálně měnit. Upřednostněte nastavení a hooky a každý override evidujte, protože jej bude nutné porovnávat při budoucích aktualizacích.