İçeriğe geç

Rehber

Child theme nedir, neden doğrudan temayı düzenlemek yerine child theme kullanmalısınız?

Bir WordPress temasını doğrudan düzenlemek, bir sonraki güncellemede tüm değişikliklerinizi silebilir. Child theme'in çözdüğü gerçek problem bu.

3 dk okumaOrta seviye
Child theme nedir, neden doğrudan temayı düzenlemek yerine child theme kullanmalısınız? — editoryal kapak görseli

WordPress temasını doğrudan düzenleyip yayınlayan birçok site sahibi, bir gün temanın yeni sürümünü güncelledikten sonra tüm özel değişikliklerinin kaybolduğunu fark eder. Child theme (alt tema), tam olarak bu problemi çözmek için var.

Child theme nedir?

Child theme, bir 'parent' (ana) temanın işlevselliğini ve görünümünü devralan, ancak kendi dosyalarında saklanan ayrı bir temadır. Ana temanın stil ve şablon dosyalarını miras alır; siz yalnızca değiştirmek istediğiniz dosyaları child theme içinde geçersiz kılarsınız (override).

Neden doğrudan temayı düzenlemek risklidir?

  • Tema geliştiricisi güncelleme yayımladığında, doğrudan düzenlenmiş dosyaların üzerine yazılır
  • Güncellemeyi atlamak ise temanın güvenlik yamalarını almamak anlamına gelir
  • Değişiklikleriniz nerede olduğunu unutmaya başladığınızda bakım karmaşıklaşır

Child theme bunu nasıl çözer?

Child theme kendi dizininde yaşadığı için ana tema güncellendiğinde hiçbir şey silinmez — ana tema dosyaları değişir, child theme'deki özelleştirmeleriniz olduğu gibi kalır. WordPress, bir dosyayı önce child theme'de arar; bulamazsa parent theme'e döner.

WordPress'in child theme ve parent theme dosyalarını çözümleme sırasını gösteren diyagram
WordPress dosya çözümleme sırası: önce child theme dizininde arar, orada yoksa parent theme'e düşer.

Ne zaman child theme, ne zaman tam özel tema?

  • Mevcut bir temanın görünümünde küçük/orta değişiklikler yapacaksanız: child theme yeterli
  • Temanın temel yapısını, şablon hiyerarşisini kökten değiştirecekseniz: özel tema geliştirme daha uygun
  • Bir page builder (sayfa oluşturucu) kullanıyorsanız çoğu görsel değişiklik zaten child theme gerektirmeyebilir

Kurulumun temel mantığı

Bir child theme, en azından bir style.css dosyası (parent temaya referans veren bir başlıkla) ve bir functions.php dosyasından oluşur. WordPress'in resmî Tema El Kitabı (Theme Handbook), doğru başlık alanlarını ve stil/script yükleme sırasını (parent önce, child sonra) ayrıntılı olarak açıklar.

style.css başlığında nelere dikkat edilmeli?

style.css dosyasının başlık alanında Template değeri, parent temanın dizin adıyla harfi harfine eşleşmelidir — örneğin Twenty Twenty-Four teması için bu değer twentytwentyfour olmalıdır. Bu değer yanlış yazıldığında WordPress child theme'i tanımaz ve stiller hiç yüklenmez; en sık karşılaşılan child theme kurulum hatası budur.

functions.php yükleme sırası neden önemli?

WordPress, parent ve child temanın functions.php dosyalarının ikisini de yükler — ancak child theme'inki, parent'tan hemen önce çalışır. Bu sıra tersine çevrilemez. Aynı isimde bir fonksiyonu her iki dosyada da tanımlamak 'duplicate function' hatasına yol açar; bu yüzden yeni işlevsellik her zaman yalnızca child theme'e eklenmelidir, parent'taki fonksiyonlar kopyalanmamalıdır.

Gerçek bir senaryo: tema güncellemesi geldiğinde ne olur?

Diyelim ki bir e-ticaret sitesinde footer'daki telif metni doğrudan tema dosyasında (footer.php) düzenlendi. Birkaç ay sonra tema geliştiricisi, bir güvenlik açığını kapatan bir güncelleme yayımlıyor. Doğrudan düzenleme yapılmışsa iki seçenek kalır: güncellemeyi uygulayıp footer değişikliğini kaybetmek, ya da güvenlik açığıyla birlikte eski sürümde kalmak. Child theme kullanılmış olsaydı, footer.php child theme'de bulunacağı için güncelleme sorunsuz uygulanır, özelleştirme de korunurdu.

Yaygın hatalar

  • functions.php'de parent temanın fonksiyonlarını yanlış sırayla çağırmak
  • style.css içindeki @import ile stil yüklemek (performans sorunu yaratır; wp_enqueue_style kullanılmalı)
  • Child theme'i yedeklemeden 'küçük bir değişiklik' diyerek doğrudan canlıda düzenlemek

Sonuç

Child theme, WordPress ekosisteminde küçük bir kurulum adımı karşılığında büyük bir bakım güvencesi sağlar. Tema güncellemelerini korkmadan almak isteyen her site için standart pratik budur.

Kategoriler

Etiketler

Kaynaklar

  1. WordPress Developer Resources — Child Themes (Theme Handbook)

Paylaş