- Konu sahibi
- #1
Çocuk temada yaptığınız değişikliğin görünmemesinin en yaygın nedenleri; yanlış dosyanın düzenlenmesi, çocuk temanın etkin olmaması, önbellek, CSS önceliği veya değiştirilen şablonun WordPress tarafından hiç kullanılmamasıdır. Önce değişikliğin doğru dosyada ve etkin çocuk temada yapıldığını kontrol edin; ardından site, tarayıcı ve varsa CDN önbelleklerini temizleyin.
Çocuk tema, ana temanın dosyalarını doğrudan değiştirmeden üzerine ekleme yapmanızı sağlar. Ancak her ana tema dosyası otomatik olarak çocuk temaya kopyalanmış gibi çalışmaz. WordPress yalnızca desteklenen şablon hiyerarşisine göre doğru dosyayı seçer. Örneğin yazı görünümünde değişiklik yapmak isterken yalnızca
CSS tarafında da dosya doğru olsa bile kuralınız daha düşük öncelikte kalabilir. Blok temalarda Site Düzenleyicisi ile kaydedilen kullanıcı özelleştirmeleri, dosyadaki şablonu veya tema ayarını geçersiz kılabilir. İlgili şablonun dosyadan mı yoksa veritabanına kaydedilmiş bir özelleştirmeden mi geldiğini kontrol edin; mevcut özelleştirmeyi yedeklemeden sıfırlamayın. Tarayıcı eski CSS dosyasını önbellekten yüklüyor veya bir eklenti CSS dosyanızı sonradan ezebiliyor olabilir. PHP değişikliklerinde ise dosya hatası, etkin olmayan çocuk tema ve sunucu önbelleği ayrıca incelenmelidir.
Başarılı kontrolde değişiklik, doğru sayfa türünde ve gizli pencere gibi temiz bir oturumda görünmelidir. Hâlâ görünmüyorsa sonraki adım, kullanılan ana tema veya eklentinin ilgili içeriği hangi dosya, kanca ya da blok üzerinden ürettiğini tespit etmektir.
Aynı belirti farklı nedenlerden kaynaklanabilir. Aşağıdaki ayrım, gereksiz dosya değişikliklerini önler.
Ana tema dosyasını doğrudan düzenlemek kısa vadede sonucu gösterse de tema güncellendiğinde değişiklik silinebilir. Bunun yerine desteklenen şablonu çocuk temaya doğru klasör yapısıyla kopyalayın.
Bir diğer hata, önbelleği temizlemeden sonucu değerlendirmektir. Önbelleği temizlemek değişiklik görünmüyorsa tek başına çözüm değildir; fakat temizlemeden yapılan test de yanıltıcıdır. Ayrıca seçiciyi rastgele
Hayır. Dosyanın çocuk tema içinde doğru klasörde bulunması ve WordPress’in o dosyayı ilgili görünüm için seçmesi gerekir. Bazı tema dosyaları doğrudan şablon değil, başka bir şablon parçası tarafından çağrılır.
Önce tarayıcı önbelleğini ve site önbelleğini temizleyip gizli pencerede test edin. Başka bir cihazda görünüyorsa sorun büyük olasılıkla yerel tarayıcı veya ağ önbelleğindedir; her cihazda görünmüyorsa dosya, tema ya da sunucu tarafını inceleyin.
Sorun nasıl oluşur?
Çocuk tema, ana temanın dosyalarını doğrudan değiştirmeden üzerine ekleme yapmanızı sağlar. Ancak her ana tema dosyası otomatik olarak çocuk temaya kopyalanmış gibi çalışmaz. WordPress yalnızca desteklenen şablon hiyerarşisine göre doğru dosyayı seçer. Örneğin yazı görünümünde değişiklik yapmak isterken yalnızca
single.php dosyasını kopyalamak yeterli olmayabilir; ana tema özel bir şablon parçası, blok şablonu veya sayfa oluşturucu kullanıyor olabilir.CSS tarafında da dosya doğru olsa bile kuralınız daha düşük öncelikte kalabilir. Blok temalarda Site Düzenleyicisi ile kaydedilen kullanıcı özelleştirmeleri, dosyadaki şablonu veya tema ayarını geçersiz kılabilir. İlgili şablonun dosyadan mı yoksa veritabanına kaydedilmiş bir özelleştirmeden mi geldiğini kontrol edin; mevcut özelleştirmeyi yedeklemeden sıfırlamayın. Tarayıcı eski CSS dosyasını önbellekten yüklüyor veya bir eklenti CSS dosyanızı sonradan ezebiliyor olabilir. PHP değişikliklerinde ise dosya hatası, etkin olmayan çocuk tema ve sunucu önbelleği ayrıca incelenmelidir.
Adım adım kontrol
- WordPress yönetim panelinde
Görünüm > Temalarbölümünü açıp çocuk temanın etkin olduğunu doğrulayın. Ana tema dosyasını düzenlediyseniz aynı şablonun çocuk temada bulunan kopyası onu geçersiz kılabilir; çocuk temada karşılığı olmayan ana tema dosyaları ise devralınabilir. - Düzenlediğiniz dosyanın gerçekten kullanılan dosya olduğunu kontrol edin. Tarayıcı geliştirici araçlarında ilgili HTML öğesini inceleyin; şablon parçası, blok tema şablonu veya sayfa oluşturucu tarafından üretilen içerik varsa klasik tema dosyası etkisiz kalabilir.
- CSS değişikliğinde geliştirici araçlarındaki “Styles” bölümünden kuralınızın görünüp görünmediğine bakın. Kural üzeri çiziliyse başka bir seçici daha önceliklidir; hiç görünmüyorsa CSS dosyası yüklenmiyor veya dosyada sözdizimi hatası vardır.
- Değişikliği kaydettikten sonra tarayıcıyı zorla yenileyin. Ardından WordPress önbellek eklentisinin önbelleğini temizleyin. CDN, sunucu veya barındırma paneli önbelleği kullanılıyorsa ilgili önbelleği de yenileyin.
- PHP dosyası değiştirdiyseniz hata günlüğünü kontrol edin. Sözdizimi hatası varsa değişiklik uygulanmaz veya sayfada hata oluşur. Hata giderildikten sonra sayfayı yeniden açın; yalnızca önbelleği temizlemek PHP hatasını düzeltmez.
- Değişikliğin yalnızca giriş yapmış kullanıcıda mı yoksa herkeste mi görünmediğini karşılaştırın. Yönetici kullanıcıya farklı önbelleksiz içerik, ziyaretçiye ise eski önbellek sunuluyor olabilir.
Başarılı kontrolde değişiklik, doğru sayfa türünde ve gizli pencere gibi temiz bir oturumda görünmelidir. Hâlâ görünmüyorsa sonraki adım, kullanılan ana tema veya eklentinin ilgili içeriği hangi dosya, kanca ya da blok üzerinden ürettiğini tespit etmektir.
Belirtiye göre doğru teşhis
Aynı belirti farklı nedenlerden kaynaklanabilir. Aşağıdaki ayrım, gereksiz dosya değişikliklerini önler.
| Belirti | Muhtemel neden | İlk kontrol |
|---|---|---|
| Hiçbir görsel değişiklik yok | Çocuk tema etkin değil veya önbellek eski | Etkin temayı ve tüm önbellekleri kontrol edin |
| CSS dosyada görünüyor ama etkisiz | Düşük öncelik, yanlış seçici veya sonradan yüklenen stil | Geliştirici araçlarında üzeri çizili kurala bakın |
| Sadece belirli sayfada etkisiz | Farklı şablon, blok veya sayfa oluşturucu kullanılıyor | Sayfanın gerçek çıktı kaynağını inceleyin |
| PHP değişikliğinde hata oluşuyor | Sözdizimi veya uyumluluk hatası | Hata günlüğünü kontrol edip son değişikliği geri alın |
Sık yapılan hatalar
Ana tema dosyasını doğrudan düzenlemek kısa vadede sonucu gösterse de tema güncellendiğinde değişiklik silinebilir. Bunun yerine desteklenen şablonu çocuk temaya doğru klasör yapısıyla kopyalayın.
functions.php bu kurala uymaz: çocuk ve ana temanın dosyaları birlikte yüklenir; ana temanın bütün işlevlerini kopyalamak yinelenen işlev hatası doğurabilir. Doğrudan ana tema yoluyla include edilen yardımcı dosyaların da otomatik olarak çocuk dosyayla değişeceğini varsaymayın. CSS için de dosyayı çocuk temada oluşturmak tek başına yeterli değildir; dosyanın temanın stil kuyruğuna eklenmiş olması gerekir.Bir diğer hata, önbelleği temizlemeden sonucu değerlendirmektir. Önbelleği temizlemek değişiklik görünmüyorsa tek başına çözüm değildir; fakat temizlemeden yapılan test de yanıltıcıdır. Ayrıca seçiciyi rastgele
!important ile güçlendirmek yerine önce hangi kuralın stilinizi ezdiğini bulun. Sayfa oluşturucu veya blok tema kullanılıyorsa ilgili görünümün kendi şablon ve stil ayarlarını kontrol edin.Kaynaklar
Sık sorulan sorular
Çocuk tema dosyasını ana temadakiyle aynı adlandırmak yeterli mi?
Hayır. Dosyanın çocuk tema içinde doğru klasörde bulunması ve WordPress’in o dosyayı ilgili görünüm için seçmesi gerekir. Bazı tema dosyaları doğrudan şablon değil, başka bir şablon parçası tarafından çağrılır.
Değişiklik yalnızca kendi bilgisayarımda görünmüyorsa ne yapmalıyım?
Önce tarayıcı önbelleğini ve site önbelleğini temizleyip gizli pencerede test edin. Başka bir cihazda görünüyorsa sorun büyük olasılıkla yerel tarayıcı veya ağ önbelleğindedir; her cihazda görünmüyorsa dosya, tema ya da sunucu tarafını inceleyin.