WP-Cron adalah sistem cron yang terintegrasi dengan WordPress, yang memungkinkan Anda menjalankan tugas-tugas terjadwal pada situs WordPress Anda. WP-Cron menggunakan mekanisme fungsi yang didefinisikan oleh pengguna (user-defined function) yang disebut “scheduled events” (peristiwa terjadwal).
Langkah-langkah
Berikut adalah langkah-langkah umum untuk menggunakan WP-Cron pada WordPress:
- Membuat fungsi yang akan dijalankan pada waktu tertentu
Untuk menggunakan WP-Cron, Anda perlu membuat fungsi yang akan dijalankan pada waktu tertentu. Misalnya, Anda ingin menjalankan fungsi untuk menghapus cache situs WordPress setiap hari.
function clear_cache_daily() {
// Lakukan tindakan penghapusan cache di sini
}
- Menjadwalkan waktu eksekusi fungsi
Untuk menjadwalkan waktu eksekusi fungsi yang telah Anda buat, Anda dapat menggunakan fungsi wp_schedule_event()
. Fungsi ini akan memasukkan fungsi yang ingin Anda jalankan ke dalam WP-Cron dan menentukan waktu eksekusinya. Misalnya, untuk menjalankan fungsi clear_cache_daily()
setiap hari pukul 00.00, gunakan kode berikut:
// Menjadwalkan eksekusi fungsi pada pukul 00.00 setiap hari
if (!wp_next_scheduled('clear_cache_event')) {
wp_schedule_event(strtotime('00:00:00'), 'daily', 'clear_cache_event');
}
// Menambahkan aksi untuk peristiwa terjadwal 'clear_cache_event'
add_action('clear_cache_event', 'clear_cache_daily');
- Menambahkan aksi pada fungsi yang dijadwalkan
Setelah fungsi telah dijadwalkan dengan wp_schedule_event()
, Anda dapat menambahkan aksi yang akan dijalankan pada fungsi tersebut dengan menggunakan add_action()
. Misalnya, untuk menjalankan fungsi clear_cache_daily()
, gunakan kode berikut:
// Menambahkan aksi untuk peristiwa terjadwal 'clear_cache_event'
add_action('clear_cache_event', 'clear_cache_daily');
Dalam contoh di atas, kode menambahkan aksi clear_cache_daily()
pada peristiwa terjadwal dengan nama clear_cache_event
. Ketika waktu eksekusi tiba, WP-Cron akan menjalankan fungsi clear_cache_daily()
dan melakukan tindakan penghapusan cache.
Anda juga dapat mengatur jadwal yang berbeda-beda seperti ‘hourly’, ‘twicedaily’, atau bahkan menentukan waktu sendiri dengan menentukan jumlah detik sejak waktu sekarang.
// Menjadwalkan eksekusi fungsi setiap 2 jam
if (!wp_next_scheduled('clear_cache_event')) {
wp_schedule_event(time(), 'twicedaily', 'clear_cache_event');
}
// Menjadwalkan eksekusi fungsi setiap 30 menit
if (!wp_next_scheduled('clear_cache_event')) {
wp_schedule_event(time(), 1800, 'clear_cache_event');
}
Semoga membantu!