Ütemezett feladatok (cron job) létrehozása

[Ezt a cikket 1 perc elolvasni.]

Ütemezett feladatokat (ismertebb nevén cron job) legtöbbször a tárhelyünk adminisztrációs felületén vagy magán a szerveren hoztunk létre, kevesen tudják azonban, hogy ezt megtehetjük a WordPress-en belül is, a rendszer beépített feladatütemezőjét (WP Cron) használva. Létezik egy okos kis kódrészlet aminek a segítségével bármilyen parancsot futtathatunk az általunk beállított időintervallumban (óránként, naponta, stb.)

Egy parancs óránkénti futtatásához a következő kódrészletet kell használnunk:

<?php
add_action('my_hourly_event', 'do_this_hourly');

function my_activation() {
if ( !wp_next_scheduled( 'my_hourly_event' ) ) {
wp_schedule_event(time(), 'hourly', 'my_hourly_event');
}
}
add_action('wp', 'my_activation');

function do_this_hourly() {
// ide jön a futtatni kívánt parancs
}
?>

Értelemszerűen az “ide jön a futtatni kívánt parancs” rész alá kerül a futtatni kívánt kódunk. Azt is fontos még megjegyezni, hogy a WordPress feladatütemezője kicsit másképp működik, mint a szerveren beállított cron job, mivel az oldalra érkező látogatók hívják meg a funkciót. Tehát hiába állítasz be egy óránkénti ütemezést, mert ha csak 6 óra múlva érkezik az oldaladra megtekintés, akkor csak 6 óra elteltével fog először lefutni a parancsod. Ezzel érdemes kalkulálni egy kevésbé látogatott oldal esetén.

Ha tetszik, mutasd meg másoknak is: