Een cronjob is een taak die op een bepaald tijdstip of interval wordt uitgevoerd. Je kunt cronjobs gebruiken om bijvoorbeeld je website te backuppen, je cache te legen of je nieuwsbrief te versturen. In dit artikel leg ik je uit hoe je een WordPress cronjobs kunt schrijven in PHP en welke plugins je kunt gebruiken om deze cronjobs te beheren.
Hoe maak ik WordPress cronjobs?

Om een WordPress cronjobs te maken, moet je in PHP eerst een functie maken die de taak uitvoert die je wilt plannen. Bijvoorbeeld, als je elke dag een e-mail wilt sturen naar je abonnees, kun je de volgende functie maken:
function send_daily_email() {
// Haal de lijst van abonnees op
$subscribers = get_subscribers();
// Maak een e-mail bericht aan
$subject = 'Dagelijkse update van mijn blog';
$message = 'Hallo, hier is de dagelijkse update van mijn blog. Bekijk de nieuwste artikelen op mijn website. Bedankt voor je steun!';
// Stuur de e-mail naar elke abonnee
foreach ($subscribers as $subscriber) {
wp_mail($subscriber->email, $subject, $message);
}
}
Deze functie dien je vervolgens te plaatsen in jouw plugin of je eigen WordPress thema. Vervolgens moet je de functie registreren als een actie met de add_action() functie. Je moet ook een unieke naam geven aan je actie, bijvoorbeeld ‘send_daily_email_cron’. Dit is nodig om de actie later te kunnen plannen. Dit ziet er in code als volgt uit:
add_action('send_daily_email_cron', 'send_daily_email');
Tot slot moet je de actie plannen met de wp_schedule_event() functie. Deze functie neemt vier parameters: het tijdstip waarop de eerste keer de taak wordt uitgevoerd, de frequentie waarmee de taak wordt herhaald, de naam van de actie en optioneel een array van extra argumenten die worden doorgegeven aan de functie. Bijvoorbeeld, als je de e-mail elke dag om 9 uur wilt versturen, kun je de volgende code gebruiken:
// Controleer of de cronjob nog niet bestaat
if (!wp_next_scheduled('send_daily_email_cron')) {
// Plan de cronjob voor elke dag om 9 uur
wp_schedule_event(strtotime('9:00:00'), 'daily', 'send_daily_email_cron');
}
Je kunt verschillende waarden gebruiken voor de frequentie parameter, zoals ‘hourly’, ’twicedaily’, ‘daily’ of zelfs je eigen aangepaste interval. Je kunt ook eenmalige cronjobs plannen met de wp_schedule_single_event() functie. Meer informatie over het schrijven van je eigen WordPress cronjobs vind je op het WordPress developers resources gedeelte.
Welke WordPress plugins zijn handig voor het beheren van cronjobs?

Als je geen zin hebt om zelf PHP code te schrijven voor je cronjobs, of als je meer controle wilt hebben over je geplande taken, kun je gebruik maken van WordPress plugins die het beheren van cronjobs makkelijker maken. Hier zijn enkele voorbeelden van populaire en nuttige plugins voor cronjobs:
Met deze plugin kun je alle bestaande cronjobs bekijken, bewerken, toevoegen en verwijderen. Je kunt ook zien wanneer elke cronjob voor het laatst is uitgevoerd en wanneer de volgende keer is. Je kunt ook je eigen aangepaste intervallen maken en testen of je cronjobs goed werken.
Deze plugin geeft je ook een overzicht van alle cronjobs op je website, maar met meer details en opties. Je kunt bijvoorbeeld zien hoe lang elke cronjob duurt, hoeveel geheugen het verbruikt en of er fouten zijn opgetreden. Je kunt ook cronjobs pauzeren, hervatten, uitvoeren of verwijderen met een klik.
Conclusie
In dit artikel heb ik je laten zien hoe je WordPress cronjobs kunt schrijven in PHP en welke plugins je kunt gebruiken om je cronjobs te beheren. Cronjobs zijn handig om automatisch taken uit te voeren op je website, maar je moet wel oppassen dat je ze niet te vaak of te zwaar maakt, want dat kan je website vertragen of onstabiel maken. Ik hoop dat je dit artikel nuttig vond en dat je nu meer weet over WordPress cronjobs.