Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coppa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Come visualizzare e controllare i lavori cron di WordPress

Recentemente, uno dei nostri lettori ci ha chiesto se fosse possibile visualizzare e controllare il sistema di cron job di WordPress nella dashboard. Secondo la nostra esperienza, questa è una domanda che molti utenti di WordPress si pongono, soprattutto quando acquisiscono maggiore familiarità con il funzionamento di WordPress dietro le quinte.

Per chi non lo sapesse, Cron è una tecnologia che consente di eseguire attività programmate sul server web. WordPress è dotato di un cron incorporato che gli permette di eseguire operazioni programmate come la verifica degli aggiornamenti, la pubblicazione di post programmati, ecc.

In questo articolo vi mostreremo come visualizzare e controllare i cron job di WordPress.

Che cos’è WordPress Cron? Come funziona?

Cron è un termine tecnico usato per i comandi da eseguire a orari programmati o a intervalli regolari. La maggior parte dei server web lo utilizza per la manutenzione del server e per l’esecuzione di attività programmate.

WordPress è dotato di un proprio sistema cron che gli consente di eseguire attività programmate. Ad esempio, il controllo degli aggiornamenti, la cancellazione dei vecchi commenti dal cestino, la pubblicazione di post programmati e così via.

Anche iplugin di WordPress possono utilizzarlo per eseguire attività specificate dall’utente. Ad esempio, il plugin di backup di WordPress può utilizzare WordPress cron per creare automaticamente i backup in base a una determinata pianificazione.

Tuttavia, l’uso irresponsabile di WordPress cron da parte dei plugin può rallentare il vostro sito web. Soprattutto se si utilizza un hosting condiviso.

Se un plugin esegue frequentemente operazioni ad alta intensità di risorse, è necessario identificare il problema e risolverlo.

Vediamo come visualizzare e controllare il sistema cron di WordPress senza scrivere alcun codice.

Visualizzazione e controllo del sistema Cron di WordPress

La prima cosa da fare è installare e attivare il plugin WP Crontrol. Per maggiori dettagli, consultate la nostra guida passo passo su come installare un plugin di WordPress.

Dopo l’attivazione, è necessario visitare la pagina Strumenti ” Eventi cron per controllare le impostazioni cron.

WordPress Cron events

Verrà visualizzato un elenco di tutti gli eventi cron pianificati per l’esecuzione sul vostro sito utilizzando il sistema cron di WordPress.

Nella prima colonna, si vedrà il nome dell’hook che esegue il cron.

I nomi dei ganci di solito danno un’idea di cosa fa questo particolare evento.

La maggior parte dei ganci predefiniti di WordPress inizia con il prefisso wp_, come wp_update_plugins, wp_update_themes, ecc.

I plugin di WordPress possono utilizzare o meno i propri prefissi per i loro agganci. Ad esempio, All in One SEO utilizza il prefisso aioseo_.

È inoltre possibile vedere quando verrà eseguito il cron successivo e l’intervallo di tempo tra l’esecuzione successiva.

L’ultima colonna dell’elenco consente di modificare, eliminare o eseguire un evento cron.

Importante: fate molta attenzione a ciò che fate con gli eventi cron e non cancellate mai un evento cron predefinito di WordPress.

Supponiamo di vedere un evento cron creato da un plugin di WordPress che richiede molte risorse.

Per prima cosa, è necessario controllare le impostazioni del plugin per vedere se c’è un’opzione per controllarlo da lì. In caso contrario, è possibile fare clic sul link “Modifica” accanto all’evento cron per modificarlo.

Editing a cron in WordPress

Facendo clic sul pulsante Modifica si aprirà la scheda “Modifica evento cron” in basso.

Qui è possibile modificare la frequenza di esecuzione dell’evento.

Modifying cron settings

Una volta terminato, fare clic sul pulsante “Modifica evento cron” per memorizzare le impostazioni.

Aggiungere i propri eventi Cron in WordPress

Il plugin WP Crontrol consente di aggiungere facilmente i propri cron job a WordPress. È sufficiente visitare la pagina Strumenti ” Eventi cron e scorrere fino alla scheda “Aggiungi evento cron”.

Add custom cron event in WordPress

Innanzitutto, è necessario fornire un nome di hook per l’evento cron. I nomi dei ganci non possono contenere spazi o caratteri speciali.

Se la funzione che si vuole eseguire richiede degli argomenti, è possibile fornirli.

Successivamente, è necessario indicare a WordPress quando eseguire il cron la prossima volta. È possibile inserire “ora”, che attiverà cron immediatamente, “domani”, “+2 giorni” o “25-02-2020 12:34:00”.

Infine, è necessario selezionare un orario. È possibile selezionare un orario, due volte al giorno, un giorno o una volta alla settimana. È anche possibile rendere l’evento non ripetitivo.

Una volta terminato, fare clic sul pulsante “Aggiungi evento cron” per salvare le modifiche.

Si noterà che l’evento cron appare ora nell’elenco degli eventi.

Tuttavia, attualmente non fa nulla perché non si è detto a WordPress cosa fare quando questo evento viene attivato.

È necessario aggiungere il gancio e una funzione che viene eseguita quando il gancio cron viene attivato.

add_action( 'wpb_custom_cron', 'wpb_custom_cron_func' );

function wpb_custom_cron_func() {
  wp_mail( 'you@example.com', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}

Non dimenticate di utilizzare il vostro indirizzo e-mail.

Questa funzione invia semplicemente un’e-mail di prova quando il cron viene eseguito. Ora è possibile scorrere la pagina e fare clic sul link “Esegui ora” accanto all’evento cron per testarlo.

Nota: l’utilizzo di cron richiede competenze di livello intermedio in materia di programmazione e sviluppo di WordPress. Se non avete queste competenze, vi consigliamo di assumere uno sviluppatore WordPress.

Questo è tutto. Speriamo che questo articolo vi abbia aiutato a capire come visualizzare e controllare i cron job di WordPress. Potreste anche voler consultare la nostra guida su come installare in blocco i vostri plugin WordPress preferiti o la nostra selezione dei migliori plugin di sicurezza per WordPress.

Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.

Divulgazione: I nostri contenuti sono sostenuti dai lettori. Ciò significa che se cliccate su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come WPBeginner è finanziato , perché è importante e come puoi sostenerci. Ecco il nostro processo editoriale .

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Il kit di strumenti WordPress definitivo

Ottenete l'accesso gratuito al nostro kit di strumenti - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Reader Interactions

19 commentiLascia una risposta

  1. Paul Barrett

    We run cron at server level because wp-cron overloads teh server. There’s is nothing on our site that is so time-critical the jobs need to running frequently. If we set the frequency to say daily, would WordPress have a problem?

    • WPBeginner Support

      It would heavily depend on what is being done on the site and when. We do not have a specific recommendation for what can be delayed to that extent.

      Admin

  2. Matt K

    When I go to change the the recurrence on the Hooks, they just get changed back. Something isn’t right. Do I need to disable WP crons in wp-config.php first?

    • WPBeginner Support

      It would depend on the specific chron job, if you reach out to the plugin’s support they should be able to assist

      Admin

  3. Heinz

    Can I deactivate or even delete WP Control plugin in after having set a cron job, so I don’t have too many plugins running and slow down the website?

  4. Andre Hesdahl

    I am a newbee with WordPress and don’t know where to put (or how to execute) the code:
    add_action( ‘wpb_custom_cron’, ‘wpb_custom_cron_func’ );

    function wpb_custom_cron_func() {
    wp_mail( ‘you@example.com’, ‘Automatic email’, ‘Automatic scheduled email from WordPress to test cron’);
    }

  5. Jeff

    Thanks for the article. Interesting to see the number of plugins that have cron jobs running often. Great peak under the hood plugin…

  6. David

    How can i configure the cron to every half hour?

  7. hazel beaver

    When I check the cron schedule the dates shown in the ‘next run’ column are all in the past. Does that mean they are not running?

    In the past I think I added ‘true’ in the wp config file to stop automatic wp updates from breaking my site…. could this be the cause?

  8. Janson

    Does this work in Multi-site? Can one control crons for all instances in a multisite scenario?

  9. Oleg

    Great article, but no need for

    if ( ! wp_next_scheduled( ‘wpb_custom_cron’ ) ) {
    wp_schedule_event( time(), ‘hourly’, ‘my_task_hook’ );
    }

    this part is done in the plugin,

  10. beny salim

    how can i add Recurrence like five minutes, ten minutes

  11. Ahmad Sayeed

    I tested you given example. It works like a superman. But please give us an example to send parameter. I have added the function while creating the even. But I don’t know how to use them on PHP function.

    Please give us an example

  12. Sunny

    My website is coming up with a long wp cron string after my URL and I cant get rid of it. Any thoughts?

    ?doing_wp_cron=1499261576.8675799369812011718750 comes up after my url and its making me look really spammy. Your insight would be appreciated.

  13. Aniket Ashtikar

    Is that ‘my_task_hook’ cron hook rightly mentioned there at line 2 or should that rather be changed to ‘wpb_custom_cron’?

  14. Matt

    Do you know if its possible to visit a link in the wp-admin area? I have a plugin that adds admin features to my wordpress site but I really want this scheduled to happen every 24 hours. I have the link but obviously am required to be logged in.

  15. Pam M

    Do you need that first if statement shown in the sample code? It looks like it would override the ability to schedule and unschedule in the WP Crontrol plugin.
    Your example worked nicely when I scheduled the job in the plugin and tested it with the Run Now option. I’ll see if I get an email at the scheduled time too.
    Thanks for the helpful background info.

  16. Nigam

    Hi

    When I am going to refresh the page of WP-Cron Events from wordpress admin then only run the event.

Lascia una risposta

Grazie per aver scelto di lasciare un commento. Tenga presente che tutti i commenti sono moderati in base alle nostre politica dei commenti e il suo indirizzo e-mail NON sarà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avremo una conversazione personale e significativa.