Bildiğiniz gibi temaları aldığımızda tüm özellikleri istediğimiz gibi olmuyor. Bazı gelişmiş temalar her alanı özelleştirmemize izin verse de bazıları ne yazık ki bunu sunamıyor. Bu durumda biz de bilgimiz kadarıyla, hem tasarım için hem de fonksiyonellik için kodlarımızı tema dosyalarına yapıştırıyoruz veya bu kodları tamamen değiştiriyoruz. Ancak bir sorun var, tema güncellendiğinde bu değişiklikler de kayboluyor.

WordPress Child Theme işte tam da güncelleme kısmında işimize yaramış oluyor. Çünkü Child Theme için güncelleme yapmamız gerekmiyor. İliştirdiğimiz kodlar olduğu gibi erişilebilir haliyle bizi bekliyor. Buna karşın ana temaya eklenen yeni özellikleri de kullanabiliyoruz..

Not: Temanızın orijinal CSS, PHP gibi şablon dosyalarında değişiklik yapacaksanız alt temayı kullanmanız işlerinizi çok kolaylaştıracak Fakat temanızın orijinal kodlarını değiştirmiyorsanız, alt tema kullanmaya ihtiyacınız olmayacak…

Sitenizde (sayfalarda, yazılarda, ayarlarda, bileşenlerde vb.) yaptığınız değişiklikler değil, Orijinal temanızda yaptığınız değişiklikleri, örneğin sytle.css, header.php veya function.php gibi temanızın stil ve fonksiyon kodlarında yaptığınız değişiklikleri kast ediyorum.

Biraz kulağa karışık gelebilir fakat yazımızın devamını okudukça konu hakkında daha fazla bilgi sahibi olabilirsiniz.

WordPress Child Tema

Aslına bakarsanız Child tema kullanmak için bir çok sebep var. Bunlardan başlıca olanları sıralarsak;

  • Eğer asıl temanızı direk olarak düzenlerseniz, temanızı güncellediğinizde düzenlediğiniz tüm tema dosyalar sıfırlanacağı için silinir. Fakat Child Tema kullanırsanız, sitenize eklediğiniz özellikler ve değişiklikler güncellemelerden etkilenmez.
  • Eklediğiniz özelliklerde bir sorunla karşılaştığınızda temanızı aslına döndürebilirsiniz
  • WordPress Child Tema kullanımı, sitenizi geliştirmek ve yeni özellikler eklemek için harcadığınız süreyi azaltabilir.
  • Tema üzerinde oynamalar yapmak ve WordPress tema geliştirmeyi öğrenmek için güzel bir yol olabilir.

Alt temayı istediğiniz zaman etkisizleştirerek tekrar orijinal temaya geri dönebilirsiniz. Dolayısıyla, kullandığınız tema kodlarında değişiklik yapmadan önce alt tema kullanmayı öğrenmenizde büyük yarar var.

Ana tema ve alt tema nedir sorularının yanıtıyla başlayalım.

Ana (ebeveyn) tema ve alt (çocuk) tema

Sorun : Tema güncellemesini yaptım ancak tüm düzenlemelerim gitti! Temanızı bir süre kullandınız ve bazı stil düzenlemeleri yaptınız ancak temanıza gelen güncellemeyi yaptığınızda özel yaptığınız düzenlemelerin kaybolduğunu gördünüz, peki neden?

Çözüm:  Stil dosyası dahil tüm dosyalar tema güncellemesi sırasında kaldırılır ve güncel dosyalar yüklenir, bu nedenle style.css dosyasında yaptığınız tüm düzenlemeler gider. Bu sorunla karşılaşmamak için temanızda varsa child temayı kullanınız ve yapılacak düzenlemeleri child tema klasöründe bulunan style dosyasında yapınız. Bu durumda olası tema güncellemelerinden etkilenmeyeceksiniz.

Orijinal isimleri “parent theme” ve “child theme“. “Ebeveyn tema” ve “çocuk tema” olarak da direkt çevriliyor olmalarına karşılık buradaki anlatımda “ana tema” ve “alt tema” tabirlerini kullanacağım.

Alt tema nedir?

Alt tema (child theme), WordPress temalarda güncellemeler yaparken, kullanıcının tema kodlarında daha önce yaptığı değişikliklerin korunması için geliştirilmiş bir yöntem. Sitenizde / blogunuzda kullandığınız bir WordPress temasına yaptığınız değişikliklerin ayrı bir tema olarak paketlenmesine alt tema (çocuk tema) denir. Bu paket yalnızca tema üzerinde yaptığınız değişiklikleri içerir ve tema üzerinde yaptığınız tüm değişiklikler bu paketin içinde yer alır.

Alt tema neden kullanılır? Faydaları nelerdir?

Alt tema, ana temanın tercih ettiğiniz özelliklerini, fonksiyon ve stil değişikliklerini güvenli bir şekilde korumaya yarar. Eğer bu tür değişiklikleri doğrudan orijinal temayı kullanarak yaparsanız, bir WordPress güncellemesi yaptığınızda veya kullandığınız tema sürümünü güncel hale getirdiğinizde, temanızda (dolayısıyla sitenize / blogunuzda) yapmış olduğunuz tüm değişiklikler ve düzenlemeler bir anda uçup gidebilir. Ancak eğer alt tema kullanırsanız, yaptığınız değişiklikler güncelleme sonrasında kaybolmaz, olduğu gibi korunur.

Alt tema kullanmak böylece zaman ve emek kaybını önler. Ayrıca alt tema kullanımı, WordPress tema geliştirme konusunu öğrenmenize yarar. Alt tema kullanmanın öncelikli getirisi, kullandığınız tema ile sitenizin görünümünde yaptığınız tercihleri, değişiklikleri güncellemeler sebebiyle kaybetme riskini ortadan kaldırmasıdır.

Alt tema CSS ve PHP dosyalarını nasıl etkiler?

Örneğin, bir alt tema yaratıp etkin hale getirdikten sonra temanızın stillerini belirleyen CSS’sini değiştirirseniz, siteniz yüklenirken tüm yeni CSS bilgileri, orijinal temanın CSS dosyası yüklendikten sonra eklenir. Yeni CSS’niz dosyadaki orijinallerin altına yerleştirildiğinden dolayı, tüm yeni CSS stilleri orijinallerinin üzerine yazacaktır. Bu durumda yaptığınız değişiklikler kalıcı olur.

Benzer şekilde, Functions.php, bir temanın ana işlevlerinin tipik olarak depolandığı yerdir. Ana temanın işlevleri her zaman alt temayla yüklenir, ancak temanıza daha fazla özel işlev eklemek istiyorsanız, alt tema klasörünüzde yeni functions.php dosyası oluşturarak bunu yapabilirsiniz. Yeni işlevler ana temanın işlevlerinden hemen önce yüklenecektir.

Alt tema nasıl oluşturulur?

Alt tema kullanabilmeniz için yapılması gereken şey, kullandığınız temanın bir alt temasını oluşturmaktır. Alt tema oluşturulması için ilk yapılması gereken şey ise, sitenizin /wp-content/themes dizini içinde yeni bir dizin (klasör) oluşturmaktır. Bunu manuel olarak da yapabilirsiniz. Bunun için “temanızınismi-child” şeklinde alt tema ve onun içine bir style.css dosyası oluşturup düzenleyerek, üst temanın stilini kullanarak yaptığınız değişiklikleri algılamasını sağlamanız gerekir.

Alt tema oluşturmanın en kolay ve hızlı yolu

Eğer premium tema kullanıyorsanız, alt temanız ana temanızla birlikte gelir veya veya temanızın altında “alt tema yarat” (create a child theme) seçeneği yeralır.

Artık bir çok tema “tema detayları” altında otomatik olarak tek bir buton ile alt tema oluşturmaya otomatik olarak izin veriyor.

Eğer bu özelliği barındırmıyor ise “Child Themify” isimli bir eklenti (plug-in) mevcut. Siz sadece bu eklentiyi kuruyorsunuz, hiç bir kodlamaya gerek duymadan o sizin için alt temanızı yaratıyor. Hepsi bu.

Eğer Alt temanızı kurmuş ve gerekli değişikliklerini alt tema üzerinde oluşturmuş iseniz artık WordPress güncellemelerini gönül rahatlığıyla yapabilirsiniz. Bundan böyle yapacağınız WordPress ve tema güncellemeleri, temanızın isteklerinizi yerine getirecek şekilde yapmış olduğunuz kodlama değişikliklerini yok etmeyecektir.