WP-Cron'u Onarın: İşe Yarayan Basit Bir Kılavuz

Yayınlanan: 2025-11-02

WordPress, dünya çapında milyonlarca kişi tarafından kullanılan güçlü bir içerik yönetim sistemidir. Gizli motorlarından biri olan WP-Cron, zamanlanmış gönderileri yayınlamak, eklenti güncellemelerini kontrol etmek ve bakım görevlerini yürütmek gibi zamanlanmış görevleri yerine getirmekten sorumludur. Ancak birçok WordPress kullanıcısı WP-Cron'un çalışma şeklinden dolayı performans sorunlarıyla karşılaşıyor. Planlanmış gönderileriniz yayınlanmıyorsa veya otomatik yedeklemeleriniz başarısız oluyorsa WP-Cron sisteminiz hatalı çalışıyor olabilir. Bu kılavuz, WP-Cron'u düzeltmek ve web sitenizin verimli bir şekilde çalışmasını sağlamak için güvenilir ve takip edilmesi kolay bir yöntem sağlar.

WP-Cron Nedir?

WP-Cron (WordPress Cron'un kısaltması), WordPress'teki varsayılan görev planlama sistemidir. Önceden tanımlanmış zamanlarda çalışan geleneksel Unix/Linux tabanlı cron işlerinin aksine, WP-Cron yalnızca birisi web sitenizi ziyaret ettiğinde çalışır. Sonuç olarak, trafiğin az olduğu sitelerde görevlerin kaçırılmasıyla karşılaşılabilirken, trafiğin yoğun olduğu siteler performans ek yükünden olumsuz etkilenebilir.

WP-Cron'un Neden Olduğu Yaygın Sorunlar

  • Planlanmış gönderileri veya görevleri kaçırdınız
  • Gecikmeli e-posta bildirimleri
  • Sayfa yüklemesinde yavaş web sitesi performansı
  • Çalıştırılamayan yedeklemeler veya taramalar

Bu sorunların tümü, WP-Cron'un tetikleme konusunda ziyaretçilere olan güveninden kaynaklanmaktadır. Neyse ki çözüm basit ve etkili: WP-Cron'un varsayılan davranışını doğrudan sunucunuzda çalışan gerçek bir cron işiyle değiştirin.

WP-Cron'u Düzeltmek İçin Adım Adım Kılavuz

WordPress sitenizin performansını dengelemek ve geliştirmek için WP-Cron'un yerleşik yürütmesini devre dışı bırakmak ve bunun yerine gerçek bir sistem cron işi kurmak isteyeceksiniz. Bunu nasıl yapacağınız aşağıda açıklanmıştır:

1. wp-config.php İçinde WP-Cron'u devre dışı bırakın

WordPress kök dizininize erişmek için barındırma hesabınızda oturum açın veya FTP/SFTP'yi kullanın. Ardından wp-config.php dosyasını bulun ve açın. Aşağıdaki kod satırını /* That's all, stop editing! Happy publishing. */ :

 define('DISABLE_WP_CRON', true);

Bu komut, WP-Cron'un her sayfa yüklemesinde otomatik olarak çalışmasını devre dışı bırakır.

2. Sunucunuzda Gerçek Bir Cron İşi Ayarlayın

Artık WP-Cron'u devre dışı bıraktığınıza göre, wp-cron.php düzenli aralıklarla çalıştıracak gerçek bir cron işi ayarlamanın zamanı geldi. Bunu nasıl yapacağınız barındırma ortamınıza bağlıdır.

cPanel Barındırma için

  1. cPanel kontrol panelinize giriş yapın.
  2. “Gelişmiş” bölümüne gidin ve Cron İşleri'ne tıklayın.
  3. “Yeni Cron İşi Ekle” altında yürütme süresini ayarlayın. Çoğu site için, her 15 dakikada bir çalışacak şekilde ayarlamak yeterlidir. Seçmek:
    • Dakika: */15
    • Saat: *
    • Gün: *
    • Ay: *
    • Hafta içi: *
  4. Komut giriş kutusuna şu satırı ekleyin ( yourdomain.com yerine):
     wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
  5. Değişikliklerinizi kaydetmek için Yeni Cron İşi Ekle'ye tıklayın.
Kontrol panelinin kullanıcı arayüzü oldukça basit ve kolaydır.

VPS veya Özel Sunucu için (SSH aracılığıyla)

Komut satırından çalışıyorsanız sunucunuza SSH girin ve kullanıcınız için crontab'ı düzenleyin:

 crontab -e

Aşağıdaki satırı ekleyin (yine etki alanını ayarlayın):

 */15 * * * * wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Bu, sunucuya, site ziyaretçilerinden bağımsız olarak WP-Cron'u her 15 dakikada bir güvenilir bir şekilde çalıştırma talimatını verir.

3. WP-Cron'un Çalıştığından Emin Olmak İçin Test Edin

Cron işinizin doğru çalıştığını doğrulamak için:

  • Yakın gelecekte bir gönderi planlayın (örneğin, 5 dakika ileri).
  • Planlanan zamanın geçmesini bekleyin ve yayınlanıp yayınlanmadığını kontrol edin.
  • Herhangi bir yürütme hatası için barındırma günlüklerinizi veya cron işi e-posta bildirimlerinizi (etkinse) inceleyin.

WordPress kurulumunuzda planlanmış etkinlikleri incelemek ve yönetmek için WP Crontrol gibi eklentileri de kullanabilirsiniz. Bu eklenti, kaçırılan veya gecikmiş görevleri görmenizi sağlar.

WordPress'te WP-Yönetici Paneli Nasıl Hızlandırılır?

WP-Cron Yönetimi için Gelişmiş İpuçları

1. Cron Frekansını Site Etkinliğine Göre Ayarlayın

Cron'un her 15 dakikada bir çalışacak şekilde ayarlanması yaygın olmakla birlikte, son derece düşük trafiğe sahip siteler daha sık yürütmeden yararlanabilir. Tersine, yüksek trafikli siteler, eğer görevler gerçek zamanlı yürütme gerektirmiyorsa cron'u genellikle daha az sıklıkta (her 30 dakikada bir veya saatte bir) çalıştırabilir.

2. Uzun Süreli Görevleri İzleyin

Bazı eklentiler yedekleme, rapor veya tarama gibi ağır arka plan görevleri ekler. Bu görevler yürütme sırasında takılı kalırsa diğer cron görevlerinin çalışmasını engelleyebilirler. Sorunlu olayları tanımlamak için Query Monitor veya WP Crontrol gibi eklentileri kullanın.

3. Yoğun Görevleri Ayırın

Siteniz, harici API'lerle saatlik senkronizasyon veya e-postaları sıraya alma gibi kritik arka plan işlemlerini çalıştırıyorsa, bu görevleri WP-Cron'u aşırı yüklemek yerine ayrı cron işleri aracılığıyla çalıştırmayı düşünün. Bu işlemlere özel komut dosyaları yazabilir ve bunları ayrı ayrı planlayabilirsiniz.

Kaçınılması Gereken Yaygın Hatalar

  • WP-Cron'u yüksek trafikli sitelerde kullanmak: Sık sık tetiklendiğinden performans sorunlarına yol açabilir.
  • Gerçek bir cron işi ayarlamadan WP-Cron'u devre dışı bırakmak: Bu, zamanlanmış görevlerin hiç çalışmamasına neden olur.
  • Cron'da yanlış komut sözdizimi: Cron komutunuza güvenmeden önce çalıştığını doğrulamak için her zaman terminalde manuel olarak test edin.

Alternatif Komutlar (wget kullanılamıyorsa)

Sunucunuzda wget yoksa, bunun yerine doğrudan curl veya php kullanabilirsiniz:

Kıvrılmayı kullanma

 */15 * * * * curl -s https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Php CLI'yi kullanma

 */15 * * * * php /path/to/your/site/wp-cron.php >/dev/null 2>&1

/path/to/your/site/ yerine WordPress kurulumunuzun gerçek yolunu yazdığınızdan emin olun.

Çözüm

WP-Cron'u düzeltmek, WordPress sitenizin güvenilir ve yüksek performanslı kalmasını sağlamanın en etkili yollarından biridir. Yerleşik cron sistemi işlevseldir ancak birçok gerçek dünya web sitesi için güvenilmezdir. Varsayılan WP-Cron yürütmesini devre dışı bırakarak ve bunu sunucu düzeyinde bir cron işiyle değiştirerek site yönetiminizi profesyonelleştirmek için önemli bir adım atıyorsunuz.

İster bir blog, ister e-ticaret mağazası veya kurumsal bir site işletiyor olun; güvenilir görev zamanlaması önemlidir. Sabit bir WP-Cron, güncellemelerin, yedeklemelerin ve otomatik görevlerin tam olarak olması gerektiği zamanda çalışmasını sağlayarak size gönül rahatlığı ve daha kararlı bir sistem sunar.

Yukarıda özetlenen adımları izleyin ve sitenizin performansını ve kritik görevleri daha güvenli bir şekilde izleyin. Güvenilirlik proaktif konfigürasyonla başlar.