Child theme-et a szülőtéma olyan megjelenítési módosításaihoz használjon, amelyeknek annak frissítése után is meg kell maradniuk. Részesítse előnyben a támogatott beállításokat, hookokat és kisebb CSS-módosításokat; sablont csak szükséges strukturális változtatás esetén másoljon. Minden override-ot tartson nyilván, és a szülőtéma frissítése után vesse össze az új verzióval. Az elavult override-ot távolítsa el, amikor a szülőtéma ugyanazt az igényt natívan támogatja. A kompatibilitást mindig ellenőrizze stagingben.
A WordPress child theme lehetővé teszi a szülőtéma módosítását anélkül, hogy közvetlenül felülírná annak fájljait. A szülőtéma frissítése így nem törli a saját módosításokat. Ez azonban nem jelenti azt, hogy a child theme automatikusan megoldja a kompatibilitást. Egy átmásolt sablon idővel megkerülhet egy biztonsági javítást vagy az új markupot, a CSS-felülírások rétege pedig a specificitással vívott átláthatatlan harccá válhat.
A child theme egy támogatott szülőtéma ellenőrzött megjelenítési módosításaira alkalmas. Nem helyettesíti az üzleti logikát tartalmazó bővítményt, és nem univerzális javítás egy gyenge minőségű termékre. Ez az útmutató bemutatja a minimális struktúrát, az assetek betöltését, a biztonságos felülírásokat, a frissítések tesztelését, valamint azokat a helyzeteket, amikor jobb hookot, egyedi bővítményt vagy önálló témát használni.
Child theme-et csak a megfelelő típusú módosításhoz válasszon
Először próbálja ki a szülőtéma lehetőségeit, a globális stílusokat és a támogatott hookokat. A child theme akkor indokolt, ha az adott dizájnhoz kötött saját stílusra, sablonra vagy megjelenítési funkcióra van szüksége. Ha a módosítás tartós tartalomtípust, integrációs endpointot vagy checkout szabályt regisztrál, akkor pluginba való, hogy ne tűnjön el a témával együtt.
Több tucat mélyreható felülírás esetén mérlegelje, hogy a szülőtéma továbbra is megfelelő alap-e. A child theme örökli annak architektúráját, teljesítményét és döntéseit is. Ha a rétegek többségét felülírja, egy önálló téma átláthatóbb és olcsóbban karbantartható lehet. A döntést a változtatások leltárára alapozza, ne csupán az első prototípus elkészítésének gyorsaságára.
Hozzon létre minimális, verziózott struktúrát
A témához érvényes stílusfejléc szükséges, amely pontosan a szülőtéma könyvtárára hivatkozik. Minden saját fájlt tartson verziókezelő rendszerben, és tüntesse fel a célját. Ne másolja le a teljes szülőcsomagot. Minden felesleges másolat jövőbeli eltéréssé válik, amelyet a csapatnak frissítéskor értékelnie kell.
A konfigurációt és a build folyamatot úgy dokumentálja, hogy a műtermék a szerző helyi titkai nélkül is létrehozható legyen. Az éles fájlszerkesztőt az üzemeltetési modellnek megfelelően kapcsolja ki. A saját asset verziószáma kiadáskor érvényteleníti a gyorsítótárat; a minden betöltéskor változó véletlenszerű query paraméterek csökkentik a gyorsítótár hatékonyságát.
- Csak a szükséges saját fájlok
- Egyértelmű kapcsolat a szülőtémával
- Az assetek verziózása kiadáskor
- Dokumentált build és telepítés
A stílusokat és szkripteket a támogatott API-n keresztül töltse be
Az asseteket a WordPress API-n keresztül, a megfelelő függőségekkel regisztrálja és enqueue-olja. Ne támaszkodjon a fejlécbe illesztett link tagek rögzített sorrendjére. Ellenőrizze, hogy a szülőtéma maga tölti-e be a saját stílusát; a vak hozzáadás duplikációt okozhat. A handle neve és a verzió befolyásolja a sorrendet és a gyorsítótárat is.
Az egyéni JavaScriptet csak azokon az oldalakon töltse be, ahol használják, és biztonságos mechanizmussal adja át neki az adatokat. A beállításokból származó tartalmat tartalmazó inline szkriptnek megfelelő kódolásra van szüksége, és nem tartalmazhat titkos adatokat. A CSS-felülírásokat komponensek szerint rendezze, és a dizájn frissítése után távolítsa el az elavult szabályokat.
Írja felül a sablonokat a lehető legkisebb beavatkozással
Ha a szülő téma hookot vagy filtert kínál, egy kis, célzott módosítás általában könnyebben átvihető a verziók között, mint egy teljes átmásolt sablon. Másolatot akkor használjon, ha a szerkezetet kell módosítania, és a fájlnál jegyezze fel az eredeti verziót és az okot. Ne módosítsa ugyanazt a kimenetet egyszerre több mechanizmussal dokumentáció nélkül.
WooCommerce vagy más plugin esetén különböztesse meg a plugin sablonjának felülírását (override) a szülőtémáétól. Minden rétegnek saját elavulási figyelmeztetései vannak. Frissítés után vesse össze az upstream diffet, vegye át a releváns biztonsági és akadálymentességi változtatásokat, és tesztelje újra a dinamikus állapotokat, ne csak egy statikus képernyőképet.
Frissítse a szülőtémát staging környezetben, regressziós lista alapján
Frissítés előtt olvassa el a változásokat, készítsen biztonsági mentést, és telepítsen stagingre a reprezentatív tartalom másolatával. Járja végig a navigációt, a sablonokat, az űrlapokat, a reszponzív töréspontokat, a szerkesztőt és az egyedi hookokat. Figyelje a PHP-figyelmeztetéseket, a konzolt, a vizuális eltéréseket és az elavult fájlokra vonatkozó jelzéseket.
A javítás után frissítse az overrideok nyilvántartását, és távolítsa el azokat, amelyeket a szülőtéma már natívan kezel. A telepítést visszaállítási lehetőséggel végezze, és csak a releváns cache-t ürítse. Egy child theme akkor fenntartható, ha a szülőtémához képesti eltérés kicsi, érthető és rendszeresen felülvizsgált, nem pedig csupán attól, hogy egy frissítés soha nem írja felül.
Gyakori kérdések
Törli a szülőtéma frissítése a child theme-et?
Nem, a child theme fájljai megmaradnak. A frissítés azonban megváltoztathatja azt a markupot, azokat a hookokat vagy API-t, amelyektől a módosítások függenek, ezért a kompatibilitást mindig tesztelni kell.
Az egyedi funkció a child theme-be vagy egy pluginba való?
A megjelenéshez kötött prezentációs funkció kerülhet child theme-be. A tartós üzleti logika, a tartalommodell vagy az integráció pluginba való, hogy túlélje a témaváltást.
Át kell másolni a szülőtéma összes fájlját?
Nem. Csak azt a sablont másolja le, amelyet szerkezetileg módosítania kell. Részesítse előnyben a beállításokat és a hookokat, és minden overrideot tartson nyilván, mert a jövőbeli frissítéseknél össze kell vetni őket.