Ha szerkesztettünk már WordPress oldalt, felmerülhetett bennünk, hogy a téma amit használunk, nem rendelkezik minden funkcióval, amivel szeretnénk, vagy esetleg nem módosítható egy-két olyan részlete, ami nekünk másként tetszene. Ilyen esetekben felmerülhet a saját téma létrehozásának ötlete, de ez gyakran nem célravezető. Miért kezdjünk az alapoktól felépíteni valamit, amikor már van egy közel jó téma, amin csak egy-két módosításra lenne szükségünk?
Eszünkbe juthat az a megoldás, hogy a téma fájljai között végzünk módosításokat, viszont ez nem célravezető, mert a téma frissítése során el fog veszni minden módosításunk. Ekkor felmerülhet bennünk az a megoldás, hogy lemásoljuk a témát, és sajátként kezeljük ezentúl. Így viszont a frissítések, amik esetleg sérülékenységeket javítanának, nem fognak eljutni hozzánk, és így akár az egész oldalunkat veszélybe sodorhatjuk. Mégis mit tehetnénk akkor?
Az ideális megoldás az ún. child téma létrehozása. Itt az eredeti témában tudunk módosításokat végrehajtani, egy témától független saját mappában. A saját mappánk tartalma nem változik a téma frissítésével, így nem kell attól félnünk, hogy változtatásaink el fognak veszni.
Lehetséges hátrányok
Mielőtt belevágunk a saját child témánk létrehozásába, van egy pár dolog amiről érdemes tudnunk:
- A child téma megírásához tudnunk kell, hogy mi az, amit módosítunk. Ha nem látjuk át a fő téma szerkezetét, funkcióit vagy nem ismerjük a webfejlesztés alapjait, akkor érdemesebb fejlesztő segítségét kérnünk.
- Nagyobb verziófrissítésnél ritkán, de előfordulhat, hogy nem lesznek a módosításaink kompatibilisek az eredeti témával, így akár rosszabb esetben újra kell írnunk a child témánkat, a fő téma változásait figyelembe véve.
- A child témák alapvetően kevesebb, elsősorban kozmetikai módosításra lettek tervezve, ha nagyon sok változtatást szeretnénk, akkor érdemes megfontolnunk, hogy inkább egy saját témát hozunk létre.
- Fizetős és oldal építő (másnéven drag’n’drop) témák esetén nem mindig egyértelmű, hogy mit módosíthatunk és mit nem, illetve a módosítás lehet, hogy befolyásolja a témával kapcsolatos garanciákat. Ezekben az esetekben egyeztessünk a téma készítőjével, hogy mit enged és mit nem.
Hogyan hozzunk létre child témát?
Ha a fentebbieket figyelembe véve arra jutottunk, hogy a child téma nekünk való megoldás, akkor nincs más teendőnk, mint létrehozni az első saját child témánkat. Ezt három lépésben tudjuk megtenni:
- Hozzunk létre a témának egy könyvtárat a wp-content/themes/ mappán belül. Érdemes a fő témánk nevét használni -child utótaggal, vagyis ha témának a twentytwenty nevű alapértelmezett sablont választottuk, akkor legyen a mappánk neve twentytwenty-child
- Hozzunk létre egy stíluslapot az imént létrehozott mappán belül style.css néven. Itt adhatjuk meg a témánk egyedi stílusjegyeit. Az első blokk commentben írhatjuk be témánk nevét, és további metaadatokat, amiket a WordPress témaválasztó meg fog számunkra jeleníteni.
- Hozzunk létre egy functions.php-t a kívánt kódbeli módosításokkal. Itt érdemes lehet a parent téma stíluslapját is importálnunk, ha esetleg az nem töltene be és szükségünk lenne rá. Fontos megjegyezni, hogy a functions.php a child témában nem írja felül, csak kiegészíti a parent téma functions.php-ját. Minden további parent témához tartozó php fájlból, ha létrehozunk a child témánkban egy másolatot, akkor felül tudjuk írni annak funkcióit. Érdemes a parent téma módosítandó fájljait bemásolnunk a child témánk mappájába, és úgy szerkesztenünk, így elegendő csak módosítást végeznünk, nem kell újraírnunk a teljes fájlt.
Ha minden módosítást elvégeztünk, akkor csak aktiváljuk a témát, és máris a saját child témánkat használhatjuk.