WordPress Children temasıyla çalışmak için ana rehberiniz

Bizden satın aldığınız temayı Herothemes’de ayarlamak istiyorsanız, belki kendiniz için bir web sitesi oluşturursanız veya müşteriniz önce sipariş edilen tasarımı kullanırsanız, WordPress çocuk temasının gücünü kullanabilirsiniz. Temel olarak, çocuk temasını kullanmak sizi daha verimli hale getirecektir – her proje için kullandığınız kodu kendi ana temanızda kaydedin veya bizim olarak mevcut olan ebeveynin ana temasını kullanın, yani kuru prensibe uyuyorsunuz (kendinizi tekrarlamayın ). Ancak ayrıca, bir çekirdek kod tabanına sahip bir site ağı oluşturmak için çocuk ve ana temayı kullanabilirsiniz, üçüncü bir taraf teması çerçevesine dayalı özel bir tema oluşturabilirsiniz veya hatta kendi ana temanızı oluşturabilirsiniz. bir tema çerçevesi. Bu makalede, çocuğun temasının özü hakkında kısa bir resim vereceğim ve sonra daha ileri teknikler göstereceğim. Öğreneceksiniz:
Ana temayı veya üçüncü taraf tema çerçevesini proje ihtiyaçlarınızla uyarlamak için bir çocuk teması nasıl kullanılır
WordPress, her ebeveyn ve çocuk temasındaki şablon dosyalarını nasıl önceliklendirir
Çocuk temanızın dosya işlevindeki ana tema işlevini nasıl değiştirir.
Teoride ebeveynler ve çocukların teorisini anlamak, herhangi bir tema ebeveyn teması olarak hareket edebilir, ancak bazıları bu rol için daha iyi tasarlanmıştır (bizimki dahil!). Temalarımızdan birini kullanırsanız ve kendi projeniz için değiştirmek istiyorsanız, bunu yapmak için çocuğun temasını ana temayı hacklemekten daha iyidir, yani bir sonraki sürüm için temayı güncellerken tüm değişiklikleri kaybedeceğiniz anlamına gelir. Bir çocuk teması oluşturmak için, yeni bir tema oluşturmanız ve stil sayfasının başlangıcına aşağıdakileri eklemeniz yeterlidir. Aşağıdaki örneğim, ebeveyn olarak Herothemes Helpguru temasını kullanıyor, ancak Knowall gibi diğer Herotheme ürünleri de dahil olmak üzere herhangi bir temayı kullanabilirsiniz. Bilgi tabanınızı bugün oluşturmaya başlayın! Knowall temaları, temayı almak için bilgi tabanı sitenizi ayarlamanıza yardımcı olacak çocukların temalarını ekliyoruz

/*
Tema Adı: Çocuk Temam
Tema uri: temanın veya sitenin URL’si için kullanıldığı
Açıklama: Temanın ne için olduğunu ve ana özelliklerinin açıklaması.
Yazar: Adınız
Şablon: Helpguru
Sürüm: 1.0
*/
@Import url (“../ helpguru/css/style.css”);
Bu önemli satır şu iki: Şablon: Helpguru
@Import url (“../ helpguru/css/style.css”);
İlk kısım, WordPress’e bunun çocuğun teması olduğunu ve ebeveynin Helpguru’nun teması olduğunu söyleyen şablonu belirler. Temanın adını değil, ana tema klasörünün adını burada kullandığınızı unutmayın (bu yüzden yukarıda ‘helpguu’ kullanıyorum, ‘helpguru’ değil).
HelpGuru bir çocuk teması kullanılarak değiştirilebilir

İkinci bölüm, ana temanın stil sayfasını ithal eder, yani ana temanın tüm stilinin çocuğunuzun temasında etkinleştirileceği anlamına gelir. Daha sonra bu @Import beyanı altına kendi stilinizi eklersiniz – bu, iki temanın stilinin kullanılacağı anlamına gelir, ancak aynı öğe için her iki stil sayfasında bir beyan varsa, çocuğun CSS temaları uygulanacaktır ( Stil, ana temanın stilinden sonra gelir). Çocukların temaları stil sayfalarından oluşabilir ve isterseniz başka bir şey, bu durumda tek yapacağınız ana temanın bazı stilini değiştirmektir. Veya ek şablon dosyaları ve/veya işlev dosyaları ekleyebilirsiniz, bu durumda WordPress’in şablon dosyasına annenizden ve çocuk temasından nasıl erişmesine nasıl erişmesini anlamalısınız. Ebeveynlerin ve çocukların dosya şablonu temaları WordPress Yöntemi Üst ve Çocuk Temaları’ndaki şablon dosyalarını kullanarak Oldukça basit. Belirli sayfalar (veya yayınlar veya diğer içerik türleri) görüntülenirken, WordPress, şablon hiyerarşisine uygun olarak ebeveynden veya çocuğun temasından en alakalı şablon dosyasını kullanacaktır. Aynı şablon dosyasının iki sürümünü bulursanız, çocuk temalarından birini kullanır. Bu, çocuğunuzun tema şablonu dosyasının ana tema şablonu dosyasını iki senaryoda değiştireceği anlamına gelir:
Çocuğunuzun teması hiyerarşide ana temadaki daha yüksek bir şablon dosyası içeriyorsa;
Veya ebeveyniniz ve alt temanız şablon dosyasının gerekli sürümünü içeriyorsa.
WordPress tema şablonu dosyasına karar verin WordPress, hangi şablon dosyasının kullanılacağını belirlemek için bir şablon hiyerarşisi kullanacaktır, ancak bu, ebeveyn ve çocuk temalarınızın her birinde sahip olduğunuz dosyalarla etkileşime girer. Basitçe söylemek gerekirse, WordPress üç adımdan geçer: Bu, görüntülenen içerik türünü tanımlar.
Hem ebeveynin hem de çocuğun temasında içeriği görüntülemek için dosyalar bulmak için şablon hiyerarşisi aracılığıyla çalışır.
Dosya üst ve çocuk temasındaysa, dosya çocuk temalarından birini kullanır.
Bunu bir örnekle gösterelim. Aşağıdaki tabloda, biri diğerinin çocuğu olan iki varsayımsal temadaki bir şablon dosyası koleksiyonunu göstermektedir. Vurguladığım dosyaya öncelik verildi.
WordPress kullanılacak şablonu nasıl seçer?
Yukarıdaki örnekte, belirli içerik türlerini görüntülemek için hangi şablon dosyasının kullanılacağına bakalım:
‘Ürün’ türü için tek bir yazı, çocuk temasından tek üretim.php kullanılarak görüntülenir.

Diğer yayın türleri (normal yayınlar dahil) için tek bir gönderi, çocuk temasından single.php kullanılarak görüntülenecektir.
Statik sayfalar, ana temadan Page.php kullanılarak görüntülenir.
Widget kategorisinin listesi, Children temalarından category-widgets.php kullanılarak görüntülenecektir.
Diğer kategorilerin listesi, üst temadan category.php kullanılarak görüntülenecektir.
Diğer arşivlerin listesi, ana temadan archive.php kullanılarak görüntülenecektir.
Arama sonuçları, ana temadan search.php kullanılarak görüntülenecektir.
Ana temadan 404.php kullanılarak 404 sayfa görüntülenecektir.
Belirli şablon dosyaları olmayan diğer sayfalar, çocuk temasından index.php kullanılarak görüntülenir. Daha fazla alın – ana temanın işlevini değiştirin ve/veya şablon dosyalarını üst temadaki çocuk temasını kullanabilirsiniz. Üst temadaki işlevselliği değiştirmek veya ek işlevler eklemek.
Uyarı! Çocuğunuzun teması için kullandığınız her şey ek işlevler eklemekse, bir eklenti yazabilirsiniz. Ne yazık ki, ana temadaki işlev dosyası ve çocuk stil sayfasıyla aynı şekilde etkileşime girmez, aslında tersine çalışırlar (kafa karıştırıcı, biliyorum). WordPress, çocuğunuzun temasından geldikten sonra anne temasının işlevini çağırır, bu da işlevin çocuğun temasının işlevini değiştirebileceği anlamına gelir. Bunun biraz zahmetli geldiğini biliyorum: Bir çocuk teması yapıyorsunuz çünkü sitenizde istediğiniz şey bu, değil mi? Neyse ki bunun üstesinden gelmenin bir yolu var. İlk yöntem, çocuğunuzun temasında kullandığınız şeydir ve işlevinizi ilgili eylem veya kanca filtresine eklerken öncelik belirlemektir. İkincisi, ana temada yapılır ve işlevinizin takılmasını sağlamaktır. Yakında tartışacağım, ama önce çocuğunuzun temasındaki yönteme bakalım.
Ana Tema İşlevini değiştirmek için öncelikleri kullanın Çocuğunuzun temasına eklediğiniz her işlevi etkinleştirmek için, Add_action () veya Add_filter () kullanarak eylem kancasına veya kanca filtresine eklemeniz gerekir. Add_action () ve add_filter () işlevinin üç parametresi vardır:
$ Tag – Eylem veya filtre kancası için benzersiz kimlik
$ function_to_add – işlev adınız $ priority – işlevinizle ilişkilendirmek istediğiniz öncelik (yakında daha fazlası)

Add_filter () ile dördüncü isteğe bağlı parametreyi $ arguments kullanabilirsiniz, ancak bu çocuğun temasıyla çok alakalı değildir. Çoğu durumda, yalnızca ilk iki parametre (her ikisi de gereklidir) kullanılır, ancak ana temadaki işlevleri alt temanızdaki işlevlerle değiştirmek için isteğe bağlı $ öncelik parametrelerini kullanabilirsiniz. Öncelik ne kadar yüksek olursa, daha yavaş yüklenir: varsayılan 10’dur, bu nedenle ana tema öncelik belirlemezse, çocuğunuzun temasındaki öncelikleri 10’dan daha yüksek sayılara ayarlarsınız. Bunun nasıl çalıştığını görelim. Helpguru temasından çocuklarla çalıştığınızı ve menünün işlevselliğini değiştirmek ve kendiniz eklemek istediğinizi düşünün. Bu tema, temayı (menüyü kaydetmek, üstün resim desteği eklemek ve diğerleri dahil) ayarlamak için ht_theme_setup () işlevini içerir. HelpGuru işlev dosyasındaki kod aşağıdaki gibidir:
if (! function_exists (‘ht_theme_setup’))):
İşlev ht_theme_seup () {
// işlevin içeriği
}
}
Add_action (‘After_setup_theme’, ‘ht_theme_setup’);
HT_THEME_SETUP () () () () (ancak hepsi değil: Hemen tartışacağız) çocuğunuzun temasında, HelpGuru tarafından sağlanan işlev öğelerinin yerini alan ve After_setup_Theme Hook, eylemine ekleyen bir işlev yazacaksınız, Önceliğin 10’dan daha yüksek belirlenmesi: işlev my_theme_setup () {
// işlevin içeriği
}
Add_action (‘After_setup_theme’, ‘my_theme_setup’, 15);
WordPress aynı kancaya bağlı bu işlevleri bulduğunda, ilk olarak üst temadan olan daha düşük önceliği etkinleştirir. Bu daha sonra çocuğunuzun temasından daha yüksek bir öncelik ateşleyecektir, yani ana temanın işlevi olabilir. Yukarıda bahsettiğim gibi, bir ana tema olarak daha kolay kullanılabilmeleri için temanıza yazmak için iyi bir uygulama olan başka bir yöntem var ve bu da işlevinizi takılabilir hale getirmek için. Değiştirmeye izin vermek için takılabilir işlevi kullanmak WordPress’in çocuğunuzun temasından sonra ana temadaki işlevi sürdürdüğünde, çocukların temaları Ana temanızın işlevini kodlayabilirsiniz, böylece çocuk temasında aynı adın işlevini kontrol ederler ve varsa, ana tema işlev geçmez. Yukarıda HelpGuru’da gördüğümüz gibi koşullu bir ifadeyle yaparsınız: if (! Function_exists (‘ht_theme_setup’)):
İşlev ht_theme_seup () {
// işlevin içeriği
}
}
Devam eden aynı adı taşıyan bir işlev yoksa (örneğin çocuk temasında), ana temanın işlevi devam edecektir. Ancak WordPress bu adla bir işlev bulmuşsa, takılabilir işlevi görmezden gelir (yani ana tema olanlar). İşlevini sağlamak için, çocuk temasında, anne temasındayken aynı adla bir işlev oluşturmanız yeterlidir. Bu nedenle, bir bütün olarak ht_theme_setup () işlevini değiştirmek için bunu çocuğunuzun temasında kullanacaksınız: ht_theme_setup () {) {) {) işlevi
// işlevin içeriği
}

admin

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir