Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

7 Min.

Het plannen van de publicatie van berichten in WordPress , het controleren van Plugins op updates, het maken van back-ups - dit zijn allemaal typische voorbeelden van taken die herhaaldelijk voorkomen. En dit is waar WP-Cron van pas komt in WordPress . Wat dit betekent en wanneer server-side cron jobs zinvoller zijn, leggen we uit in dit artikel.

Zoals u weet, voert uw computer voortdurend en in razend tempo ontelbare berekeningen uit met enen en nullen, die allemaal een taak hebben. Veel van deze taken moeten worden herhaald. Keer op keer - zoals je tanden poetsen. Dus heb ik de volgende vraag voor u:

Als je je tanden poetsen kon automatiseren, zou je dat doen?

Uw WordPress website heeft geautomatiseerde onderhoudstaken die hij op regelmatige basis moet uitvoeren. In dit artikel bekijken we wat deze taken zijn, welke problemen ze kunnen veroorzaken, en hoe RAIDBOXES het u supergemakkelijk maakt om ze te beheren.

Telkens wanneer uw lokale machine u een popup meldt dat er een update is gevonden of een e-mail in uw inbox is aangekomen, is dat vrijwel zeker een cronjob die achter de schermen aan het werk is.

Wat is Cron? 

Cron is een opdracht voor het plannen van taken die is geïntegreerd in Linux-gebaseerde systemen - zoals Ubuntu, Debian of zelfs Mac OSX - en ook op servers. Onder Windows heet deze functionaliteit "Task Scheduler".

Documentatie over het gebruik van de cron-functie in deze systemen is hier te vinden: 

  • Windows - Taakplanner (gebruikt een grafische gebruikersinterface [GUI] voor meer gebruiksvriendelijkheid)

Wat doet Cron eigenlijk?

Het doel van cron is om repetitieve taken uit te voeren - bijvoorbeeld controleren op beschikbare updates of het verzenden en ontvangen van e-mails. Dit is meestal standaard voor u ingesteld. Maar hoe meer software u op uw machine hebt geïnstalleerd, hoe meer jobs er waarschijnlijk zullen bijkomen. De schermafbeelding hieronder toont bijvoorbeeld een cronjob in Taakplanner in Windows 10. 

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

Vraag je je af hoe dit werkt? Cron werkt door taken te plannen op basis van de tijd van uw apparaat, en kan worden ingesteld per minuut, uur, dag, week, maand en jaar. In Cron stel je een specifieke tijd in waarop een actie moet worden uitgevoerd. 

Wat is WP-Cron?

WordPress Cron, ook bekend als WP-Cron, is een PHP-bestand dat meestal te vinden is in de root directory van uw WordPress installatie. 

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

En wat doet WP-Cron?

Het WordPress cron bestand (wp-cron.php) bevat de geautomatiseerde taken die uw WordPress installatie moet uitvoeren. Bijvoorbeeld dingen als het controleren op updates van Plugins en WordPress of het publiceren van geplande berichten. Voor meer informatie, zie de documentatie"Wat is WP-Cron" in het officiële WordPress Plugin Handboek. 

WP-Cron versus Cron

Het belangrijkste verschil tussen WordPress cron en de cron scheduler is dat wp-cron.php alleen wordt uitgevoerd wanneer een gebruiker uw website bezoekt en een pagina laadt. Dit betekent dat WordPress een HTTP/HTTPS-verzoek van uw website nodig heeft om geplande taken uit te voeren. De cron taak wordt dan in een wachtrij geplaatst om te worden uitgevoerd. 

Je vraagt het je misschien af, en terecht:

Waarom draait WP Cron alleen als een gebruiker mijn site bezoekt! 

Nou, veel WordPress hosts bieden alleen gedeelde hosting, wat meestal betekent dat de host je geen toegang geeft tot het cron commando. Want als ze dat deden, zou je toegang hebben tot de commando's van de server en zouden alle gegevens op de server mogelijk gecompromitteerd zijn. Dus WordPress Cron is de workaround voor dit probleem.

Het tweede verschil is dat wanneer je Cron gebruikt, je specifieke tijden kunt instellen (bijvoorbeeld dagelijks 17:00 om een taak uit te voeren). In WP-Cron daarentegen, stel je intervallen in (bijvoorbeeld, 14:00 & interval X daarna). WP-Cron voert dan de taak uit op die intervallen zolang een gebruiker de site heeft bezocht. Voor meer info, zie ook: WP-Cron Scheduling begrijpen

WP-Cron en prestaties

Omdat WP-Cron wordt geactiveerd telkens wanneer een gebruiker uw website bezoekt, kan dit problemen veroorzaken voor zowel kleine als grote websites. Ik zal nu uitleggen waarom.

Kleine & geografisch specifieke websites

Voor kleinere websites met weinig verkeer is het probleem dat de crontaak niet vaak genoeg wordt uitgevoerd. Voorbeeld: Wat als uw website om 2:00 uur 's nachts een back-up moet maken, maar u een kleine reisgidssite hebt die slechts in één stad actief is. In dit geval is het onwaarschijnlijk dat uw doelpubliek uw site om 2 uur 's nachts bezoekt en de cronjob activeert. En als het in het laagseizoen is, kan het zijn dat je dagenlang geen bezoeker op je site krijgt. 

Grotere websites & wereldwijd bereik

Voor sites met een groot aantal gebruikers kan WP-Cron echter prestatieproblemen veroorzaken en je site zelfs kwetsbaar maken voor een DDoS-aanval. Als je nu waarschijnlijk in paniek naar je muis of koffiekopje greep bij het horen van een DDoS-aanval: maak je niet te veel zorgen, want er is een oplossing voor alles.

Wat is de oorzaak van het probleem?

De hoeveelheid verkeer is de oorzaak van het probleem. Voor grote websites is verkeer natuurlijk een must en belangrijk voor de zaken, dus het aan banden leggen van de oproepen is geen optie om het probleem op te lossen. 

Onthoud dat elk paginabezoek resulteert in het triggeren van WP-Cron - en dat is natuurlijk belastend voor je server omdat het resources vereist.

Is er een betere manier?

Gelukkig is het antwoord "ja". We kunnen het verkeer niet gemakkelijk afremmen, geen fysieke winkels over de hele wereld openen of de bouw van WordPress veranderen. Maar we kunnen veranderen wat WP-Cron laat draaien. 

In plaats van wp-cron.php te draaien op basis van paginabezoeken, kunnen we een cron taak instellen op de hosting server die WP-Cron draait op specifieke intervallen. Ik zal je laten zien hoe je dat moet doen.

Configureer server-side uitvoering van wp-cron.php op RAIDBOXES

Om het u zo gemakkelijk mogelijk te maken, heeft het team van RAIDBOXES deze functie in het RB-dashboard ingebouwd. Je hebt letterlijk vijf klikken nodig om de server-side uitvoering van de WordPress cronjobs in te stellen! Als u een ontwikkelaar bent die tijd wil besparen, is dit een van de gemakkelijkste aanpassingen om te maken.

Om server-side cronjobs in te schakelen in uw RAIDBOXES dashboard, gaat u eerst naar uw BOX instellingen en klikt u vervolgens op "Cronjobs" in de zijbalk. 

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

Nu zie je alle instellingen voor je cronjobs. 

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?


Nu moet je het volgende configureren in de cronjobs:

  1. Schakel "Run WP-Cron" uit (dit voorkomt dat WP-Cron wordt getriggerd door bezoekers van de website).
  2. Zet "Run WP-Cron server-side" aan (dit voegt een cron taak toe aan de server om wp-cron.php te starten met het interval dat u opgeeft). 

Dat is alles wat er is!

Let op:

Als je WP-Cron uitvoeren uitschakelt en ook de optie WP-Cron server-side uitvoeren is uitgeschakeld, zullen er geen cron jobs meer worden uitgevoerd op je site.

Voor deze aanpassing is het dus niet nodig om contact op te nemen met uw hoster, in het cPanel te gaan of handmatig uw wp-cron.php bestand aan te passen. Op RAIDBOXES hoeft u maar een paar keer te klikken en kunt u uw cronjobs direct in het RB-dashboard controleren en beheren. Je hoeft dus geen extra Plugin te installeren om je cronjobs te bekijken.

Als u verdere configuraties wilt maken, kunt u ook het interval instellen waarmee wp-cron.php moet worden uitgevoerd in het RAIDBOXES dashboard.

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

Er wordt veel gespeculeerd over het "beste" interval voor je cronjobs. We raden meestal aan niet onder de 5 minuten te gaan. 

Wijzig uw WordPress cronjobs

Zonder Plugins

Als u Plugin niet wilt installeren om uw wp-cron.php bestand te bewerken, is dat geen probleem! Op RAIDBOXES kunt u uw cronjobs gemakkelijk beheren via het RB dashboard zoals hierboven beschreven. Natuurlijk kun je ook toegang krijgen tot je cronjobs via een SSH verbinding. Zodra u verbinding heeft gemaakt met uw account, kunt u wp-cron.php bewerken in de root directory van uw WordPress website.

Als je wilt weten hoe je je werkstroom nog efficiënter kunt maken met SSH, dan kun je het beste ons artikel"De Perfecte WordPress Ontwikkel Werkstroom met Git & SSH" bekijken. 

Met Plugins

Momenteel is de meest populaire Plugin voor het beheren van WP cronjobs"WP Crontrol". U kunt de Plugin ook rechtstreeks in uw WordPress zoeken en installeren op Plugins en installeer het. 

Wat is WP-Cron en wanneer zijn "echte" cron-jobs nuttig voor jouw WordPress-website?

Op WP Crontrol's Plugin pagina op WordPress .org kunt u ook nuttige documentatie vinden over het juiste gebruik van Plugin

Stel de server handmatig in om WP-Cron te activeren (niet nodig met RAIDBOXES)

Met een beetje moeite kun je ook je server zelf configureren om wp-cron.php op bepaalde intervallen te laten draaien.

  1. Bewerk de wp-cron.php 

In wp-cron.php

  • Schakel uw wp-cron.php bestand uit door de volgende code aan het bestand toe te voegen:
define('DISABLE_WP_CRON', 'true');

Daarna zal wp-cron.php niet langer getriggerd worden wanneer een gebruiker uw website bezoekt.

  1. Voeg een cronjob toe aan uw server

In uw serveromgeving

Afhankelijk van uw hosting omgeving, kan een van de twee onderstaande opties van toepassing zijn op uw specifieke situatie: 

  • Als u gebruik maakt van een gedeelde WordPress hosting service, neem dan contact op met uw hosting provider en vraag hen om een server-side cron trigger toe te voegen voor wp-cron.php als u zelf geen toegang heeft tot de Linux commando's.
  • Of, als je je site met cPanel draait en toegang hebt tot je commandoregel, kijk dan in de betreffende cPanel documentatie

Het WP cron-bestand wordt gemakkelijk over het hoofd gezien bij het bouwen van een WordPress website, maar kan leiden tot merkbare fouten als uw site een behoorlijke hoeveelheid verkeer krijgt.

WordPress Bereid u voor op verkeerspieken

Verwacht u veel verkeer op uw WordPress website, bijvoorbeeld als gevolg van een marketingcampagne? Dan heb je de juiste voorbereiding nodig! Onze Head of Development Matthias laat u zien welke 13 maatregelen u kunt nemen om uw WordPress voor te bereiden op hoge belastingen.

Conclusie

Ik hoop dat dit artikel je helpt te begrijpen wat de WordPress cron functie is en hoe het werkt. Als u het goed gebruikt, kunt u belangrijke taken op betrouwbare wijze automatiseren, zodat u zich kunt concentreren op wat belangrijk is.

Ons doel is om het beheer van je WP cronjobs zo makkelijk en gemakkelijk mogelijk te maken via het RAIDBOXES dashboard. Op die manier kunt u de ontwikkeling en het beheer van uw site verder optimaliseren via deze snelle en directe toegang.

Heeft u meer vragen over WP-Cron of ons dashboard? Laat gerust een reactie achter! Wilt u op de hoogte gehouden worden van nieuwe berichten op WordPress ? Volg ons dan op Twitter, Facebook of via onze nieuwsbrief.

Als webontwikkelaar bij RAIDBOXES werkt Marten voortdurend aan nieuwe features voor onze klanten. Op "wp unboxed" scoort hij ook met zijn kennis van webdevelopment, WordPress en ons dashboard. En ook in zijn vrije tijd houdt hij zich graag bezig met self-hosting en de nieuwste trends op het internet.

Gerelateerde artikelen

Reacties op dit artikel

Laat een opmerking achter

Jouw e-mailadres zal niet worden gepubliceerd. Verplichte velden zijn met een * gemarkeerd.