Technologie Gadgets, SEO Tipps, Geld Verdienen mit WEB!

Cron Jobs di WordPress: cosa sono e come…

Cron Jobs di WordPress: cosa sono e come...

Molti sviluppatori di WordPress, soprattutto i principianti, hanno domande comuni: “cos’è il cron di WordPress” e “come gestire i lavori cron di WordPress?” La risposta è semplice!

Cron è un’utilità UNIX standard per la pianificazione dell’esecuzione di attività (script o comando) in un’ora, una data o un intervallo specifici. L’attività che eseguirà è nota come lavoro cron. Come puoi immaginare, lo scopo di un lavoro cron è automatizzare le attività ripetitive in modo da poter Utilizzare il tuo tempo in modo più produttivo.

Tuttavia, il cron job di WordPress è leggermente diverso dal cron standard, quindi prima di immergerti nell’azione e nel processo, devi capire cos’è un cron di WordPress e come funziona per l’automazione delle attività.

Cos’è il Cron di WordPress?

WordPress dispone di un proprio sistema cron per la pianificazione di attività come il controllo degli aggiornamenti, la pianificazione della pubblicazione di un post e l’eliminazione dei commenti dal cestino. Tutti i lavori cron sono gestiti da WP-Cron.

Anche se il nome (e l’idea principale) deriva da UNIX cron, WordPress cron non funziona così e utilizza intervalli per la pianificazione delle attività. Gli intervalli di tempo predefiniti forniti da WordPress sono orari, due volte al giorno, giornalieri e settimanali. In questo caso, le attività basate sul tempo dipendono dagli utenti che visitano il tuo sito, il che significa che il cron di WordPress verrà eseguito solo se un utente visita il tuo sito web.

In altre parole, il cron di WordPress viene eseguito quando la pagina viene caricata. A volte questo non è così affidabile, ed è per questo che molti utenti preferiscono un lavoro cron a livello di server rispetto al lavoro WP-Cron.

Vantaggi di WordPress Cron

Se desideri automatizzare il processo di un sito web o hai bisogno di controllarlo, verificarlo e controllarlo regolarmente, i lavori cron tornano utili. Ad esempio, potremmo voler eseguire il ping di un server una volta al giorno, controllare lo stato di un sistema ogni ora (e registrarlo nel database) e così via.

WP Cron semplifica il core di WordPress e altri plugin per eseguire compiti basati sul tempo. È relativamente semplice impostare un lavoro cron di WordPress invece di utilizzare un vero lavoro cron che richiede la conoscenza dei comandi Linux.

Inoltre, poiché WP-Cron utilizza intervalli per pianificare le attività, puoi essere certo che la tua attività alla fine verrà eseguita anche se il tempo pianificato scade, a differenza di un vero cron che specifica l’ora esatta in cui deve essere eseguita un’attività. Se il tempo passa e l’attività non viene eseguita, non verrà eseguita nuovamente finché non la riprogramma manualmente.

Come gestire i lavori Cron di WordPress

Esistono molti modi per impostare e gestire i processi cron di WordPress, ma ti mostrerò due metodi popolari. Puoi utilizzare uno qualsiasi di questi quando utilizzi il nostro hosting WordPress gestito.

Il primo utilizza un plugin di gestione cron come WP Controllo che ti consente di aggiungere, modificare e gestire i lavori cron di WordPress direttamente dalla dashboard di WP. Puoi anche creare un processo cron, creare hook e funzioni e definire intervalli di tempo personalizzati per le attività.

E il secondo metodo è con CLI di WordPress.

Come gestire i lavori Cron di WordPress con i plugin

Utilizzerò il plugin WP Crontrol che ti consente di visualizzare e controllare il cron di WordPress per la tua applicazione WordPress. È il popolare plugin che gestisce i lavori cron di WP e ha più di 200.000 installazioni attive.

WP-Cron non funziona continuamente. Per impostazione predefinita, wp-cron.php si attiva ad ogni caricamento di pagina, il che su siti Web ad alto traffico può causare problemi. Se un sito Web non dispone di un numero sufficiente di PHP Worker, a volte arriverà una richiesta e WordPress produrrà il cron, ma il cron deve reggere per il lavoratore, e quindi è giusto che sia lì.

Questo è il metodo più semplice per gestire i lavori cron di WordPress e puoi visualizzare, modificare, creare, eliminare rapidamente e fare molto di più con gli eventi cron di WordPress.

Quindi iniziamo!

Passaggio 1: installa il plug-in WP Control

Proprio come qualsiasi altro plugin, devi installare WP Crontrol dal repository dei plugin e attivarlo.

Una volta installato, noterai che una nuova opzione, “Cron Events” è apparsa nella scheda Strumenti.

Passaggio 2: visualizzare e comprendere gli eventi Cron

Successivamente, devi fare clic su Eventi cron e visualizzare un elenco di eventi cron in esecuzione sulla tua applicazione WordPress.

Puoi eseguire, modificare ed eliminare i tuoi eventi cron da questa sezione. Vedrai questa opzione quando passi il mouse su qualsiasi evento cron.

Troverai anche informazioni utili su questi lavori cron e identificherai rapidamente quale lavoro cron viene utilizzato per quale scopo e molto altro ancora.

  • Nella prima colonna, Hook mostra il nome dell’hook utilizzato dal core di WordPress o da qualsiasi plugin. Ad esempio, il prefisso “wp” mostra semplicemente che si tratta di un cron del core di WordPress.
  • Noterai inoltre che non esiste alcuna opzione per eliminare questi eventi cron, tuttavia puoi utilizzare le opzioni modifica ed esegui ora. Allo stesso modo, per i tuoi plugin, noterai l’utilizzo di altri prefissi (ad esempio, per WooCommerce, “wc” o “woocommerce”).
  • La seconda colonna, Argomenti, contiene solo gli argomenti passati alle funzioni hook.
  • La terza colonna mostra quando questo processo cron verrà eseguito la prossima volta.
  • La quarta colonna, Azione, mostra quale azione eseguirà questo cron (la “funzione” del lavoro cron).
  • L’ultima colonna definisce i tempi di ricorrenza dei lavori cron. Questo è l’intervallo di tempo per l’attività pianificata.

Passaggio 3: modifica evento Cron

Ora modifichiamo un lavoro cron WP per testare questo plugin.

  • Vai al nome di un hook e fai clic su modifica.
  • Una nuova sezione, “Modifica evento Cron” apparirà dove vedrai diversi campi. Nel mio caso, ho modificato il file “wp_privacy_delete_old_export_files” gancio.
  • Successivamente, modificherò la ricorrenza di questo processo cron in “Once Hourly (hourly)”.

Passaggio 4: aggiunta di un intervallo di tempo personalizzato

Successivamente, ti mostrerò come aggiungere un intervallo di tempo personalizzato per i tuoi eventi cron.

  • Vai su Impostazioni WordPress → Pianificazioni Cron.
  • Ora, fai clic su “Programma Cron” scheda e verrà visualizzata una nuova schermata in cui vedrai i dettagli degli intervalli di tempo programmati.
  • Compila i campi Nome interno, Secondi intervallo e Nome visualizzato, quindi fai clic su Aggiungi pianificazione cron.
  • Tieni presente che l’input per l’intervallo è in secondi. Utilizzerò 600 secondi per impostare l’intervallo su 10 minuti.
  • Ora puoi modificare il tuo evento cron e sostituirlo con il tuo intervallo personalizzato.

Passaggio 5: aggiunta di un nuovo evento Cron

Ora sai come gestire le semplici attività per i tuoi eventi cron, ma cosa succede se desideri aggiungere il tuo lavoro cron per la tua applicazione WordPress? Non preoccuparti; è così semplice e devi seguire le istruzioni seguenti.

  • Innanzitutto, fai clic su Aggiungi evento cron e entrerai nella sezione Aggiungi cron.
  • Quindi, dai semplicemente il nome del hook che desideri (dovrebbe seguire la normale convenzione di denominazione PHP e senza spazi).
  • Quindi, aggiungi argomenti (è facoltativo); nel mio caso è vuoto.
  • Successivamente, seleziona un’opzione e inserisci un’ora nel campo Esegui successiva.
  • Infine, scegli un orario di ricorrenza (orario di pianificazione) per il tuo nuovo cron e fai clic su Aggiungi evento.
  • Se hai domande al riguardo, puoi controllare qualsiasi impostazione del processo cron in esecuzione dai tuoi eventi cron.
  • Dopo aver aggiunto un nuovo processo cron, vai alla scheda eventi cron e controlla il cron appena creato. Noterai che la colonna azione mostrerà Nessuno (errore). Questo perché non hai definito alcuna azione per questo processo cron.
  • Pertanto è necessario scrivere alcune righe di codice nel file file Functions.php del tema e aggiungi un’azione.
  • Vai a Dashboard di WordPress → Aspettoe fare clic su Editor di file di temi.
  • Clicca sul funzione.php file da File di temi opzione sul lato destro della pagina.
  • Aggiungi le seguenti righe di codice subito dopo nel file function.php del tuo tema

add_action(‘cloudways_new_cron’, ‘cw_function’); funzione cw_funzione() wp_mail( ‘[email protected]’, ‘DreamHost Cron’, ‘DreamHost: un hosting cloud gestito!’ );

Puoi vedere nell’immagine sopra che l’ho modificata direttamente con la dashboard di WordPress. Se lo desideri, puoi modificare questo file tramite un client FTP come FileZilla.

Successivamente, controlla la casella di posta elettronica e verifica se stiamo ricevendo il messaggio.

Tada! È fatto e abbiamo aggiunto con successo un nuovo evento cron.

Come gestire i lavori Cron di WordPress con la CLI di WP

Puoi anche visualizzare e gestire tutti i tuoi lavori cron di WordPress dalla CLI di WordPress. Su DreamHost, è necessario avviare il terminale e accedere con le credenziali del server.

  • Puoi utilizzare PuTTy per accedere al tuo server. Inserisci l’indirizzo IP del tuo server e fai clic su Apri.
  • Inserisci il nome utente e la password del tuo server in PuTTy dal pannello di gestione del server DreamHost.
  • Successivamente, inserisci il percorso della tua applicazione WordPress. Nel mio caso, l’URL era:

cd applicazioni/urrghmpqks/public_html/

  • Successivamente, è necessario eseguire questo comando:

elenco eventi cron di wp

  • È possibile visualizzare il nome dell’hook, l’ora di esecuzione successiva, la relativa esecuzione successiva e la ricorrenza (ora pianificata).

Come impostare un vero lavoro Cron

Ora sai cos’è il cron job di WordPress e come funziona. E se volessi sostituirlo con un vero e proprio lavoro cron per traffico ridotto, attività importanti che devono essere eseguite in un determinato momento, attacchi DDoS eccessivi o tempo di caricamento della pagina elevato?

Quindi iniziamo!

Passaggio 1: apri e modifica il file wp-config.php

Innanzitutto, devi aprire il file wp-config utilizzando un client FTP come FileZilla o un client SSH come PuTTY. Successivamente, modifica il file e posiziona la seguente riga di codice prima della riga in cui dice /* È tutto. Smetti di modificare! Buon blogging. */

define(‘DISABLE_WP_CRON’, true);

Questo codice disabilita gli eventi cron in esecuzione sul tuo sito WordPress e ora puoi creare un vero lavoro cron.

Passaggio 2: aggiunta di un nuovo processo Cron al server

Successivamente, accedi alla tua Piattaforma DreamHost, quindi vai su Pannello Gestione applicazioni → Gestione lavori Cron → sezione Avanzate.

Quindi aggiungi il seguente comando e fai clic su Salva modifiche:

*/5 * * * * wget -q -O – ‘https://wordpress-413270-1299955.cloudwaysapps.com/wp-cron.php?doing_wp_cron’ >/dev/null 2>&1

Nel comando precedente, innanzitutto, ho definito un intervallo di cinque minuti per il processo cron. È possibile utilizzare questo sito per verificare l’espressione della pianificazione temporale. Nel mio caso, */5 * * * *è l’espressione dell’intervallo.

È tutto! Hai aggiunto con successo un vero lavoro cron.

Riepilogo

Spero che questo articolo ti abbia aiutato a capire come funziona il cron job di WordPress. Ho discusso due metodi per gestire i lavori cron di WordPress; uno tramite un plugin e l’altro tramite WP-CLI. Ho anche discusso della creazione di un vero e proprio lavoro cron su un server live WordPress. Per favore fatemi sapere nella sezione commenti qui sotto se avete domande.

×

Ricevi la nostra newsletter
Sii il primo a ricevere gli ultimi aggiornamenti e tutorial.

Grazie per esserti iscritto!