Gyakorlott WordPress fejlesztők is beleesnek abba a hibába olykor, hogy közvetlenül átírják az aktív sablon fájljait. Mondjuk egy nyelvi fájlból fordíthatatlan sor miatt, vagy kisebb-nagyobb módosítások miatt.
Ezzel az a gond, hogy nem lehet frissíteni nyugodt szívvel a sablont, hiszen biztosan elvesznek a módosítások. Ami a biztonsági kockázatokon túl, még számos problémát is okozhat, hiszen nem biztos, hogy a jövő WordPress verzióival is kompatibilis lesz a sablon frissítés nélkül.
Természetesen erre van megoldás a WordPress-ben, ez a Child sablon rendszer. A lényege, hogy anélkül tudjuk módosítani a fősablont, hogy közvetlenül átírnánk annak a fájljait. Child sablon használatával módosíthatóvá és frissíthetővé válik a grafikánk, anélkül, hogy aggódnunk kéne a módosítások elvesztése miatt.
A child sablon mappájában lévő fájlokon kívül minden mást a fősablon mappájából fog betölteni a WordPress, ami így nyugodtan frissíthető lesz.
Hogyan készítsünk Child sablont?
Relatíve egyszerű művelet. Készítenünk kell egy új mappát a sablonok könyvtárában (wp-content/themes/child-sablon-neve). Bármilyen nevet adhatunk neki, nincs jelentősége.
Készítenünk kell 2 fájlt a child sablon mappájába:
- functions.php
- style.css
A style.css-ben beállítjuk, hogy pontosan melyik sablonból készítünk child sablont, illetve megadhatjuk a készítő adatait stb… A functions.php segítségével pedig betöltjük a fősablon stílusfájljait.
Példa Style.css tartalom: a Twenty Fifteen sablont használom.
Nézzük fontos sorokat:
Theme Name: Tetszőleges név, ez meg fog jelenni az adminban (Megjelenés-»Sablonok)
Template: twentyfifteen (Fontos rész, itt mindig a fősablon könyvtárának a nevét kell megadni)
Miután megadtuk a child sablonnak, hogy melyik mappából töltse be a fájlokat a WordPress, be kell töltenünk a fősablon CSS-ét.
Ezt célszerű a functions.php-ban megtennünk. Másold be ezt a pár sort az functions.php-ba:
Kész! Már csak be kell kapcsolni az új sablont és el is készültünk! Admin-»Megjelenés-»Sablonok
Íme egy gyakorlati példát:
Szeretnénk tájékoztatni a látogatókat arról, hogy minden hozzászóló nevét, e-mail-címét és IP-jét elmentjük!
Persze használhatunk hookokat is, akkor nem kell átírni a comments.php-t, de az majd egy másik bejegyzés témája lesz! 🙂
[mks_separator style=”dashed” height=”5″]