WordPress Cron İşleri Nasıl Görüntülenir ve Yönetilir
Yayınlanan: 2022-05-11Cron, kullanıcıların zamanlanmış görevleri Linux veya Unix benzeri işletim sistemlerinde çalıştırmasına izin veren bir iş zamanlayıcıdır.
WordPress'in WP-Cron olarak bilinen kendi Cron'u vardır. WordPress Cron'un ana amacı, temel WordPress görevlerini çalıştırmaktır. Bu yazıda, WP-Cron'un ne olduğunu, WordPress Cron işlerini nasıl görüntüleyeceğinizi ve yöneteceğinizi ve ayrıca web sitenizdeki WP-Cron'u nasıl devre dışı bırakacağınızı ele alacağız.
İçindekiler
WordPress Cron Nedir? |
Cron İşleri Nasıl Yönetilir |
WordPress Cron Olaylarını Görüntüleme |
Cron Olaylarını Düzenleme |
Yeni Bir Cron Etkinliği Ekleme |
Cron Programları |
Wp Cron'u Devre Dışı Bırakma |
Çözüm |
WordPress Cron Nedir?
WordPress Cron (WP-Cron), WordPress'in görevlerin zamanlamasını nasıl kolaylaştırdığını ifade eder. Bu görevlere Cron işleri denir. Cron işlerinin örnekleri şunları içerir: planlanmış gönderilerin yayınlanması, yedeklemelerin yapılması ve güncelleme kontrollerinin yapılması.
WordPress Cron, bir sayfa yüklendiğinde neyin çalıştırılması gerektiğini kontrol ederek zamanlanmış görevlere göre çalışır. Ancak bu bazen bir dezavantajdır, çünkü zamanlanmış bir görevin olduğu bir zamanda meydana gelen sayfa yüklemesi olmazsa, bu bir hataya neden olur. Ancak bu bir dezavantaj olsa da, görevin kuyruk konumuna bağlı olarak en azından bir sonraki sayfa yüklenene kadar sonunda çalışacağına dair bir güvence vardır.
Cron İşleri Nasıl Yönetilir
WP Crontrol eklentisi yardımıyla aslında Cron işlerini görüntülemek, eklemek ve değiştirmek mümkündür.
Eklentiyi kullanmak için WordPress panonuzdaki Eklentiler > Yeni Ekle bölümüne gidin ve WP Crontrol eklentisini arayın.
Ardından, eklentiyi kurun ve etkinleştirin.
Kurulumu tamamladıktan sonra WordPress sitenizdeki Cron işlerini yönetmeye devam edebilirsiniz.
WordPress Cron Olaylarını Görüntüleme
WordPress Cron Olaylarını görüntülemek için WordPress kontrol panelinizdeki Araçlar > Cron Olayları bölümüne gidin.
Burada, web sitenizde yürütülmesi planlanan tüm etkinlikleri yerinde görüntüleyebilirsiniz.
Olaylar farklı kategoriler altında gruplandırılmıştır:
- Eylemsiz etkinlikler
- WordPress temel olayları
- Özel Etkinlikler
İlk sütunun altında, Cron olayını çalıştırmak için kullanılan kancaların bir görünümüne sahip olabilirsiniz. Kanca adı, planlanan olayın ne yaptığı hakkında bir fikir sağlar. Ön eki wp olan kancalar, WordPress çekirdek olay kancalarıdır. Bu kancalar silinemez.
İkinci sütunda “Argümanlar” bölümü var. Bu sütun, kancaya iletilen bağımsız değişkenleri içerir. Bir kanca bir argüman içermiyorsa, "Yok" yer tutucusu oluşturulur.
Üçüncü sütun “Sonraki Çalıştır” dır. Bu, bir Cron olayının bir sonraki çalıştırılışının yanı sıra olayın bir sonraki çalıştırılmasına kadar olan zaman aralığını gösterir.
Dördüncü sütun “Eylem” dir. Burada Cron kancalarının gerçekleştireceği eylemler var.
“Yineleme” son sütundur. Olayın ne zaman tekrarlanacağına veya ne zaman tekrarlanacağına dair bir tanım içerir.
Cron Olaylarını Düzenleme
Bir Cron etkinliğini düzenlemek için, Cron etkinliğinin üzerine gelin ve etkinlikteki düzenle bağlantısına tıklayın.
Daha sonra “Cron Etkinliğini Düzenle” bölümüne yönlendirileceksiniz. Burada etkinliği tercihinize göre özelleştirebilirsiniz.
Yeni Bir Cron Etkinliği Ekleme
Cron Olayları bölümündeki “Yeni Ekle” butonuna tıklayarak yeni bir Cron olayı oluşturma.
Ardından, “Cron Etkinliği Ekle” bölümünün bulunduğu bir sonraki ekrana yönlendirileceksiniz.
Bu bölümde, Olay türünü (standart veya PHP Cron olayı) belirtin.
Ardından, bir kanca adı belirtin. Kanca adının WordPress adlandırma kuralına uyması gerekir. Buradaki durumumuzda, “wpb_publish_post” kanca adını ekleyeceğiz.
Argümanlar bölümünde diziye eklemeniz gereken argümanları doldurabilirsiniz. Ancak bu isteğe bağlıdır.
“Sonraki Çalışma” bölümünde etkinliğin ne zaman çalışacağını ve “Tekrar” bölümünde etkinliğin ne sıklıkta çalışacağını belirtin.
Bizim durumumuzda burada belirteceğimiz ayrıntıların örnek bir gösterimi aşağıdadır:
Etkinliği ekledikten sonra, aşağıda görüldüğü gibi etkinlik listesinden etkinliğin bir görünümüne sahip olacağız:
Şimdi, kancanın ne yapacağını belirleyen PHP kodunu temalarınızın function.php dosyasına ekleyin.
Buradaki durumumuzda, belirli bir gönderiyi yayınlamak için kodu ekleyeceğiz. Bunu yapmak için aşağıdaki kodu eklemeniz gerekecek:
function publish_post_func(){ //Assign your Post ID $post = 717; //Run the publish post function $result = wp_publish_post($post); } add_action( 'wpb_publish_post', 'publish_post_func' );
Bu kodun yapacağı şey, 717 numaralı posta kimliği olan yayınlarımızdan birini yayınlamak. Web sitenizdeki mevcut yayınlara göre tercihinize göre bir posta kimliği kullanabilirsiniz.
Bir gönderiyi yalnızca bir kez yayınlayabileceğiniz için belirttiğimiz etkinlik tekrarının "Tekrarlanmaz" olduğunu unutmayın.
Ayarlanan “Sonraki Çalıştırma” süresine ulaşıldığında, gönderi yayınlanacaktır. Aşağıda bununla ilgili bir ekran görüntüsü var:
Cron Programları
WP Crontrol eklentisi, varsayılan Cron programlarını içerir. Bunlar, WordPress kontrol panelinizdeki Ayarlar > Cron Programları bölümünden tanımlanabilir. Özel programlar ekleyen eklentileriniz varsa, bunlar da bu bölüme yansıtılacaktır. Ayrıca bölüme kendi özel programlarınızı da ekleyebilirsiniz. Aşağıda bu bölüme ilişkin örnek bir örnek verilmiştir:
Programları kod aracılığıyla manuel olarak eklemek isterseniz, bu da mümkündür. Aşağıda, altmış saniyelik bir Cron aralığı eklemek için bir örnek kod verilmiştir. Kodu temalarınızın function.php dosyasına ekleyebilirsiniz:
add_filter( 'cron_schedules', 'cron_interval' ); function cron_interval( $schedules ) { $schedules['sixty_seconds'] = array( 'interval' => 60, 'display' => esc_html__( 'Every Sixty Seconds' ), ); return $schedules; }
Eklendikten sonra, Cron Programları listesindeki programın bir görünümüne sahip olacaksınız:
Wp Cron'u Devre Dışı Bırakma
Yüksek trafikli sitelerde, WordPress Cron, özellikle sayfa yükleme söz konusu olduğunda, web siteniz üzerinde olumsuz bir performans etkisine sahip olabilir. Bu gibi durumlarda, WordPress Cron'u devre dışı bırakmak ve bunun yerine Server Cron'u kullanmak mantıklı olacaktır.
Varsayılan WordPress Cron'u devre dışı bırakmak için aşağıdakileri yapmanız gerekecektir:
FTP yoluyla site dosyalarınıza erişin. Bunu Filezilla gibi bir FTP yazılımı veya sunucunuz tarafından sağlanan cPanel gibi bir panel kullanarak yapabilirsiniz.
WordPress dosyalarınızın kök dizinine gidin ve wp-config.php dosyasını düzenlemeyi seçin.
Dosyanın içinde, aşağıdaki kodu satırın hemen üstüne ekleyin “/* Hepsi bu, düzenlemeyi bırakın! Mutlu yayınlar. */”.
define('DISABLE_WP_CRON', true);
Aşağıda bununla ilgili örnek bir ekran görüntüsü verilmiştir:
Bu yapıldıktan sonra, değişikliklerinizi kaydedin.
Çözüm
WordPress Cron ile Cron olaylarını oldukça kolay bir şekilde planlayabilirsiniz. Bu yazıda, Cron işlerinin ne olduğunu, WP Crontrol eklentisini kullanarak nasıl yönetileceğini ve WordPress Cron'u nasıl devre dışı bırakılacağını ele aldık.
Bu makalenin, WordPress Cron olaylarının nasıl yönetileceğine ilişkin bilgiler sağlamada yardımcı olduğunu umuyoruz. Herhangi bir sorunuz veya öneriniz varsa, lütfen aşağıya bir yorum bırakmaktan çekinmeyin.