Nyligen frågade en av våra läsare om det var möjligt att visa och styra WordPress cron-jobbsystemet i instrumentpanelen. Enligt vår erfarenhet är detta en fråga som många WordPress-användare har, särskilt när de blir mer bekanta med hur WordPress fungerar bakom kulisserna.
Om du inte är bekant, är Cron en teknik för att köra schemalagda uppgifter på en webbserver. WordPress levereras med sin egen inbyggda cron som gör det möjligt att utföra schemalagda uppgifter som att kontrollera efter uppdateringar, publicera schemalagda inlägg, etc.
I den här artikeln visar vi hur du visar och kontrollerar WordPress cron-jobb.

Vad är WordPress Cron? Hur fungerar det?
Cron är en teknisk term som används för kommandon som ska köras vid schemalagd tid eller med jämna mellanrum. De flesta webbservrar använder det för att underhålla servern och köra schemalagda uppgifter.
WordPress levereras med sitt eget cron-system, som gör det möjligt att utföra schemalagda uppgifter. Till exempel, kontrollera efter uppdateringar, ta bort gamla kommentarer från papperskorgen, publicera schemalagda inlägg och så vidare.
WordPress-plugins kan också användas för att utföra uppgifter som du angett. Till exempel kan ditt WordPress-säkerhetskopieringsplugin använda WordPress cron för att automatiskt skapa säkerhetskopior enligt ett givet schema.
Oansvarig användning av WordPress cron av plugins kan dock sakta ner din webbplats. Särskilt om du har delad hosting.
Om ett plugin ofta utför resurskrävande uppgifter, måste du identifiera problemet och åtgärda det.
Låt oss titta på hur man visar och kontrollerar WordPress cron-systemet utan att skriva någon kod.
Visa och hantera WordPress Cron-system
Först måste du installera och aktivera pluginet WP Crontrol. För mer information, se vår steg-för-steg-guide om hur man installerar ett WordPress-plugin.
Efter aktivering måste du besöka sidan Verktyg » Cron Events för att styra cron-inställningarna.

Du kommer att se en lista över alla cron-händelser som är schemalagda att köras på din webbplats med WordPress cron-systemet.
I den första kolumnen ser du namnet på den krok som kör cron.
Hook-namn ger dig vanligtvis en ledtråd om vad den här specifika händelsen gör.
De flesta standard WordPress-krokar börjar med prefixet wp_, som wp_update_plugins, wp_update_themes, etc.
Dina WordPress-plugins kan eller kanske inte använder sina egna prefix för sina krokar. Till exempel använder All in One SEO prefixet aioseo_.
Du kommer också att få se när en cron kommer att köras nästa gång, och tidsintervallet mellan nästa körning.
Den sista kolumnen i listan låter dig redigera, ta bort eller köra en cron-händelse.
Viktigt: Var mycket försiktig med vad du gör med cron-jobb, och ta aldrig bort ett standard WordPress cron-jobb.
Låt oss nu anta att du ser en cron-händelse skapad av ett WordPress-plugin som är ganska resurskrävande.
Först bör du kontrollera pluginets inställningar för att se om det finns ett alternativ för att styra det därifrån. Om det inte finns, kan du klicka på länken 'Redigera' bredvid cron-jobbet för att ändra det.

Om du klickar på knappen Redigera öppnas fliken ‘Ändra Cron-händelse’ nedanför.
Här kan du ändra hur ofta du vill att händelsen ska köras.

När du är klar klickar du på knappen ‘Modify Cron Event’ för att spara dina inställningar.
Lägga till egna cron-händelser i WordPress
WP Crontrol-pluginet gör det enkelt att lägga till dina egna cron-jobb i WordPress. Besök helt enkelt sidan Verktyg » Cron-händelser och bläddra ner till fliken ‘Lägg till cron-händelse’.

Först måste du ange ett krok-namn för ditt cron-jobb. Krok-namn får inte innehålla mellanslag eller specialtecken.
Om funktionen du vill köra kräver argument, kan du ange dessa argument.
Därefter måste du tala om för WordPress när den ska köra cron nästa gång. Du kan ange ‘nu’ vilket utlöser cron omedelbart, ‘imorgon’, ‘+2 dagar’, eller ’25-02-2020 12:34:00’.
Slutligen behöver du välja ett schema. Du kan välja timvis, två gånger dagligen, dagligen eller en gång i veckan. Du kan också göra det till en händelse som inte upprepas.
När du är klar klickar du på knappen 'Lägg till Cron-händelse' för att spara dina ändringar.
Du kommer att märka att ditt cron-jobb nu visas i listan över jobb.
Men för närvarande gör det ingenting eftersom du inte har talat om för WordPress vad som ska hända när denna händelse utlöses.
Du måste lägga till din hook och en funktion som körs när cron-hooken utlöses.
add_action( 'wpb_custom_cron', 'wpb_custom_cron_func' );
function wpb_custom_cron_func() {
wp_mail( '[email protected]', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}
Glöm inte att använda din egen e-postadress.
Den här funktionen skickar helt enkelt ett testmeddelande till dig när cron körs. Du kan nu scrolla upp på sidan och klicka på länken ‘Run Now’ bredvid ditt cron-händelse för att testa den.
Notera: Att använda cron kräver programmeringskunskaper på mellannivå och kunskaper inom WordPress-utveckling. Om du inte har dessa kunskaper rekommenderar vi att du anställer en WordPress-utvecklare.
Det var allt, vi hoppas att den här artikeln hjälpte dig att lära dig hur du visar och hanterar WordPress cron-jobb. Du kanske också vill se vår guide om hur du installerar dina favorit-WordPress-plugins i bulk eller våra experttips om de bästa WordPress-säkerhetspluginsen.
Om du gillade den här artikeln, prenumerera då på vår YouTube-kanal för WordPress-videoguider. Du kan också hitta oss på Twitter och Facebook.

Mrteesurez
Tack så mycket för att du introducerade detta ämne och hjälpte oss att bättre förstå WordPress Cron-jobb. Din detaljerade förklaring klargjorde verkligen hur de fungerar och hur man hanterar dem effektivt. Jag uppskattar de insikter du har delat; det är stärkande att ha denna kunskap för att hålla våra webbplatser igång smidigt. Tack igen för din värdefulla artikel!
Paul Barrett
Vi kör cron på servernivå eftersom wp-cron överbelastar servern. Det finns inget på vår webbplats som är så tidskritiskt att jobben behöver köras ofta. Om vi ställer in frekvensen till säg dagligen, skulle WordPress ha ett problem?
WPBeginner Support
Det skulle i hög grad bero på vad som görs på webbplatsen och när. Vi har ingen specifik rekommendation för vad som kan fördröjas i den utsträckningen.
Admin
Matt K
När jag ändrar återkommande på Hooks, ändras de bara tillbaka. Något är inte rätt. Behöver jag inaktivera WP crons i wp-config.php först?
WPBeginner Support
Det skulle bero på det specifika cron-jobbet, om du kontaktar pluginets support bör de kunna hjälpa till
Admin
Heinz
Kan jag inaktivera eller till och med ta bort WP Control-pluginet efter att ha ställt in ett cron-jobb, så att jag inte har för många plugins igång och saktar ner webbplatsen?
WPBeginner Support
Ja, så länge du har använt en av standardplanerna (som dagligen). Om du har lagt till en anpassad plan kommer alla händelser som använder den att köras en gång till men inte upprepas efter det.
Pluginet bör inte orsaka en avmattning på din webbplats. För en bättre förståelse av hur WordPress-plugins påverkar din webbplats kan du ta en titt på vår artikel här:
https://www.wpbeginner.com/opinion/how-many-wordpress-plugins-should-you-install-on-your-site/
Admin
Andre Hesdahl
Jag är nybörjare med WordPress och vet inte var jag ska lägga (eller hur jag ska köra) koden:
add_action( ‘wpb_custom_cron’, ‘wpb_custom_cron_func’ );
function wpb_custom_cron_func() { wp_mail( ‘[email protected]’, ‘Automatiskt e-postmeddelande’, ‘Automatiskt schemalagt e-postmeddelande från WordPress för att testa cron’); }
Jeff
Tack för artikeln. Intressant att se antalet plugins som har cron-jobb som körs ofta. En utmärkt titt under huven-plugin...
David
Hur konfigurerar jag cron till var halvtimme?
hazel beaver
När jag kontrollerar cron-schemat är datumen som visas i kolumnen 'nästa körning' alla i det förflutna. Betyder det att de inte körs?
Tidigare tror jag att jag lade till 'true' i wp-config-filen för att stoppa automatiska wp-uppdateringar från att bryta min webbplats... kan det vara orsaken?
Janson
Fungerar detta i Multi-site? Kan man styra crons för alla instanser i ett multisite-scenario?
Oleg
Bra artikel, men ingen anledning till
if ( ! wp_next_scheduled( ‘wpb_custom_cron’ ) ) { wp_schedule_event( time(), ‘hourly’, ‘my_task_hook’ ); }
den här delen görs i pluginet,
beny salim
hur kan jag lägga till återkommande som fem minuter, tio minuter
Ahmad Sayeed
Jag testade ditt givna exempel. Det fungerar som en superhjälte. Men ge oss ett exempel för att skicka parametrar. Jag har lagt till funktionen när jag skapade händelsen. Men jag vet inte hur jag ska använda dem i PHP-funktionen.
Ge oss ett exempel
Sunny
Min webbplats visar en lång wp cron-sträng efter min URL och jag kan inte bli av med den. Några tankar?
?doing_wp_cron=1499261576.8675799369812011718750 kommer upp efter min URL och det får mig att se riktigt spamig ut. Din insikt skulle uppskattas.
Aniket Ashtikar
Är den där cron-hooken ‘my_task_hook’ korrekt nämnd där i rad 2 eller borde den snarare ändras till ‘wpb_custom_cron’?
Matt
Vet du om det är möjligt att besöka en länk i wp-admin-området? Jag har ett plugin som lägger till adminfunktioner till min wordpress-sida men jag vill verkligen att detta schemaläggs att hända var 24:e timme. Jag har länken men uppenbarligen måste jag vara inloggad.
Pam M
Behöver du det första if-uttalandet som visas i exempelkoden? Det ser ut som att det skulle åsidosätta möjligheten att schemalägga och avschemalägga i WP Crontrol-pluginet.
Ditt exempel fungerade fint när jag schemalade jobbet i pluginet och testade det med alternativet Kör nu. Jag får se om jag får ett e-postmeddelande vid den schemalagda tiden också.
Tack för den hjälpsamma bakgrundsinformationen.
Nigam
Hej
När jag uppdaterar sidan med WP-Cron Events från WordPress-admin, körs bara händelsen.