İLE %100 UYUMLU: Güvenli E-Posta Hosting Hizmetimizi 1 AY ÜCRETSİZ Deneyin! HEMEN OLUŞTURUN
WordPress otomatik güncelleme özelliği, sitenin çekirdek yazılımını, eklentilerini ve temalarını belirli koşullarda kullanıcı müdahalesi olmadan güncel tutar. Bu özellik güvenlik açısından önemli olsa da özel kodlarla geliştirilmiş sitelerde, eski PHP sürümlerine bağımlı projelerde veya güncelleme öncesinde test yapılması gereken sistemlerde beklenmedik sorunlara yol açabilir.
WordPress otomatik güncellemeyi devre dışı bırakma işlemi tek bir ayardan ibaret değildir. Yalnızca WordPress çekirdek güncellemelerini kapatmak ile eklentilerin ve temaların otomatik güncellenmesini tamamen durdurmak farklı işlemlerdir. Bu nedenle doğru yöntemi seçmek için hangi bileşenin güncellenmesini istemediğinizi belirlemeniz gerekir.
Bu rehberde WordPress otomatik güncelleme ayarlarını yönetim panelinden değiştirmeyi, wp-config.php üzerinden güncellemeleri kapatmayı, eklenti ve tema güncellemelerini ayrı ayrı kontrol etmeyi ve gerektiğinde ayarları yeniden etkinleştirmeyi ele alacağız.
wp-config.php
İçindekiler
WordPress güncellemeleri genellikle güvenlik açıklarını gidermek, hataları düzeltmek ve yeni özellikler sunmak amacıyla yayımlanır. Bununla birlikte her güncellemenin her site üzerinde aynı sonucu vermesi garanti değildir.
Otomatik güncellemelerin kontrol altına alınması gereken başlıca durumlar şunlardır:
Ancak otomatik güncellemeleri kapatmak, güvenlik düzeltmelerinin de gecikmesine neden olabilir. Bu nedenle mümkünse bütün güncellemeleri durdurmak yerine yalnızca kontrol altında tutulması gereken bileşenlerin otomatik güncellemelerini kapatmak daha dengeli bir yaklaşımdır.
Kod düzenlemek istemiyorsanız ilk olarak WordPress yönetim panelini kullanabilirsiniz. Eklenti ve tema güncellemelerini ayrı ayrı yönetmek, çoğu site için en kolay yöntemdir.
WordPress 5.5 ve sonraki sürümlerde eklentiler için otomatik güncelleme kontrolü yerleşik olarak sunulur.
İzlemeniz gereken adımlar şunlardır:
Bu işlem, seçtiğiniz eklentilerin WordPress tarafından yönetilen otomatik güncelleme özelliğini kapatır. Eklentiler yönetim panelinde güncelleme beklemeye devam edebilir ve daha sonra manuel olarak güncellenebilir.
Ayarların görünmemesi durumunda WordPress sürümünüzü kontrol edin. Yönetilen bir hosting ortamı, başka bir eklenti veya özel bir yapılandırma da otomatik güncelleme seçeneklerini etkileyebilir.
Temaların otomatik güncelleme ayarları da yönetim panelinden kontrol edilebilir.
Tema güncellemeleri, özellikle doğrudan tema dosyalarına özel kod eklenmişse dikkatle yönetilmelidir. Bununla birlikte, tema dosyalarını doğrudan değiştirmek yerine alt tema (child theme) kullanmak, güncelleme sırasında özelleştirmelerin korunmasına yardımcı olur.
WordPress’in resmî belgelerinde bu işlemler eklenti ve tema otomatik güncellemeleri rehberinde açıklanmaktadır.
Eklenti ve tema ayarlarından daha kapsamlı bir kontrol istiyorsanız WordPress’in wp-config.php dosyasını düzenleyebilirsiniz. Bu dosya, WordPress’in temel yapılandırma seçeneklerini içerir.
Dikkat: Değişiklik yapmadan önce dosyanın yedeğini alın. Yanlış eklenen PHP kodu, sitenin hata vermesine veya açılmamasına neden olabilir.
WordPress’in otomatik güncelleme mekanizmasını genel olarak kapatmak için aşağıdaki sabit kullanılabilir:
define( 'AUTOMATIC_UPDATER_DISABLED', true );
Kodu WordPress kurulumunun kök dizinindeki wp-config.php dosyasına, genellikle şu satırın öncesine ekleyin:
/* That's all, stop editing! Happy publishing. */
Bu ayar, WordPress’in arka plan otomatik güncelleme mekanizmasını devre dışı bırakır. Otomatik güncelleme bildirim e-postalarını da etkileyebilir. Ancak yönetim panelindeki manuel güncelleme işlemlerinin tamamen ortadan kalktığı anlamına gelmez.
Bu kodu kullanmadan önce başka bir eklentinin veya hosting yönetim sisteminin güncellemeleri ayrıca yönetip yönetmediğini kontrol edin.
Eklenti ve temaların otomatik güncelleme ayarlarını değiştirmeden yalnızca WordPress çekirdek güncellemelerini kontrol etmek istiyorsanız şu kod kullanılabilir:
define( 'WP_AUTO_UPDATE_CORE', false );
Bu ayar, WordPress çekirdek yazılımının otomatik güncellemelerini devre dışı bırakmak için kullanılır. Eklentilerin ve temaların otomatik güncellemelerini tek başına kapatmaz.
WordPress çekirdek güncellemelerinin kapsamı aşağıdaki gibi yönetilebilir:
// Çekirdek otomatik güncellemelerini kapatır. define( 'WP_AUTO_UPDATE_CORE', false );
// Küçük bakım ve güvenlik sürümlerinin otomatik güncellenmesini sağlar. define( 'WP_AUTO_UPDATE_CORE', 'minor' );
// Küçük ve büyük çekirdek sürümlerinin otomatik güncellenmesini sağlar. define( 'WP_AUTO_UPDATE_CORE', true );
Varsayılan davranış, WordPress’in sürümüne ve yapılandırmasına bağlıdır. Özellikle bakım ve güvenlik sürümlerinin otomatik güncellemelerini kapatmak, bilinen güvenlik açıklarının daha uzun süre giderilmeden kalmasına yol açabilir.
WordPress’in resmî teknik belgelerinde bu sabitlerin kullanımına ilişkin ayrıntılar wp-config.php yapılandırma rehberinde yer almaktadır.
Yönetim panelinden tek tek ayar yapmak yerine eklenti ve tema otomatik güncellemelerini kod üzerinden kontrol etmek mümkündür. Bunun için WordPress’in filtreleri kullanılabilir.
Aşağıdaki kod, WordPress tarafından yönetilen eklenti otomatik güncellemelerini devre dışı bırakır:
add_filter( 'auto_update_plugin', '__return_false' );
Temalar için kullanılabilecek filtre şöyledir:
add_filter( 'auto_update_theme', '__return_false' );
Her iki ayarı birlikte uygulamak isterseniz kodları bir eklentinin dosyasına veya uygun bir özel kod alanına ekleyebilirsiniz. Kalıcı ve merkezi bir yapılandırma için küçük bir özel eklenti ya da mu-plugins dizini de tercih edilebilir.
mu-plugins
Örneğin, wp-content/mu-plugins/ dizininde manual-updates.php adlı bir dosya oluşturup aşağıdaki kodu ekleyebilirsiniz. Dizin yoksa önce oluşturmanız gerekir.
wp-content/mu-plugins/
manual-updates.php
<?php /** * Plugin Name: Manual Update Controls * Description: Eklenti ve tema otomatik güncellemelerini kapatır. */ add_filter( 'auto_update_plugin', '__return_false' ); add_filter( 'auto_update_theme', '__return_false' );
Bu yöntem, kodun aktif temanın functions.php dosyasına bağlı kalmasını önler. Tema değiştirildiğinde de özel eklenti etkin olduğu sürece ayarlar uygulanmaya devam eder.
functions.php
Önemli bir ayrıntı: Otomatik güncellemeler için kullanılan filtreler, WordPress’in güncelleme mekanizmasının bütün olası kaynaklarını veya üçüncü taraf bir yöneticinin kendi güncelleme sistemini mutlaka kontrol etmez. Özel dağıtım sistemleri ve hosting tarafından uygulanan güncellemeler ayrıca değerlendirilmelidir.
SSH erişiminiz varsa ve sunucuda WP-CLI kuruluysa eklentilerin otomatik güncelleme ayarlarını komut satırından değiştirebilirsiniz.
WordPress kurulum dizinine geçtikten sonra önce mevcut eklentileri listeleyebilirsiniz:
wp plugin list
Belirli bir eklentinin otomatik güncellemesini kapatmak için:
wp plugin auto-updates disable eklenti-slug
Buradaki eklenti-slug ifadesini gerçek eklenti kimliğiyle değiştirmeniz gerekir.
eklenti-slug
Tüm eklentiler için otomatik güncellemeleri kapatmak isterseniz:
wp plugin auto-updates disable --all
Bir tema için:
wp theme auto-updates disable tema-slug
Tüm temalar için:
wp theme auto-updates disable --all
Bu komutlar, ilgili eklenti veya temaların WordPress içindeki otomatik güncelleme tercihini değiştirir. Bunlar AUTOMATIC_UPDATER_DISABLED sabitiyle aynı işlem değildir. WP-CLI’nin eklenti ve tema komutları için resmî belgelerini inceleyebilirsiniz.
AUTOMATIC_UPDATER_DISABLED
Komutları çalıştırmadan önce doğru WordPress kurulum dizininde olduğunuzu doğrulayın. Birden fazla site bulunan sunucularda yanlış dizinde işlem yapmak, beklenmeyen bir kurulumun ayarlarını değiştirebilir.
Bazı durumlarda kod eklendiği veya yönetim panelindeki ayar değiştirildiği hâlde dosyaların güncellendiği görülebilir. Bunun nedeni, otomatik güncellemelerin farklı katmanlardan yönetilmesidir.
Öncelikle aşağıdaki noktaları kontrol edin:
Sorunun kaynağını anlamak için WordPress yönetim panelindeki Araçlar → Site Sağlığı bölümünü inceleyin. Gerekirse sunucu görevlerini ve güncelleme kayıtlarını da kontrol edin.
Ayrıca AUTOMATIC_UPDATER_DISABLED ayarının etkin olması, bütün dış güncelleme araçlarının devre dışı kaldığını garanti etmez. Hangi mekanizmanın dosyaları değiştirdiği belirlenmeden yalnızca yeni kod eklemek sorunu çözmeyebilir.
Otomatik güncellemeleri devre dışı bırakmak, güncelleme zamanını kontrol etmenizi sağlar. Ancak bu kontrolün sorumluluğu da site yöneticisine geçer.
Özellikle şu riskler göz önünde bulundurulmalıdır:
Güvenlik açıkları: Güncellenmeyen WordPress, eklenti veya tema sürümlerinde bilinen güvenlik açıkları kalabilir.
Uyumluluk sorunları: Eski sürümler zamanla yeni PHP sürümleriyle, yeni tarayıcı davranışlarıyla veya diğer yazılım bileşenleriyle uyumsuz hâle gelebilir.
Bakım yükü: Güncellemeleri düzenli aralıklarla takip etmek, test etmek ve uygulamak gerekir.
Geri dönüş planının eksikliği: Manuel güncelleme sırasında da hata oluşabilir. Yedek ve geri yükleme prosedürü bulunmayan sitelerde sorunların giderilmesi zorlaşabilir.
Bu riskleri azaltmak için güncellemeleri tamamen unutmak yerine belirli aralıklarla kontrol etmek, mümkünse önce test ortamında uygulamak ve işlem öncesinde dosya-veritabanı yedeği almak önemlidir. WordPress’in yükseltme ve güncelleme rehberi de güncelleme yöntemleri ve kontrol seçenekleri hakkında teknik bilgi sunar.
Otomatik güncellemeleri tekrar etkinleştirmek için daha önce uyguladığınız yönteme göre ilerlemelisiniz.
WP_AUTO_UPDATE_CORE
false
auto_update_plugin
auto_update_theme
auto-updates enable
Birden fazla yöntem aynı anda kullanılmışsa yalnızca birini geri almak yeterli olmayabilir. Bu nedenle yapılan değişiklikleri not etmek ve ayarları hangi katmanın yönettiğini bilmek önemlidir.
WordPress otomatik güncellemeyi devre dışı bırakmak için tek bir yöntem yoktur. Eklenti ve tema ayarlarını yönetim panelinden değiştirebilir, çekirdek güncellemelerini WP_AUTO_UPDATE_CORE ile kontrol edebilir, tüm arka plan otomatik güncelleme mekanizmasını AUTOMATIC_UPDATER_DISABLED üzerinden kapatabilir veya WP-CLI ile bileşen bazında işlem yapabilirsiniz.
En uygun yöntem, sitenizin yapısına ve güncelleme ihtiyacınıza bağlıdır. Sadece belirli bir eklentinin otomatik güncellemesini durdurmak istiyorsanız tüm güncelleme mekanizmasını kapatmanız gerekmez. Öte yandan kurumsal veya özel geliştirilmiş projelerde kontrollü güncelleme süreci uygulanacaksa test, yedekleme ve düzenli güvenlik takibi birlikte planlanmalıdır.
Otomatik güncellemeleri kapatmak güncelleme ihtiyacını ortadan kaldırmaz; yalnızca güncellemelerin ne zaman ve nasıl yapılacağını sizin kontrolünüze bırakır.