Come Configurare un Cron Job di Sistema per WordPress su cPanel e Plesk

WordPress include un sistema interno chiamato WP-Cron per gestire i compiti programmati. Questo strumento esegue operazioni cruciali come la pubblicazione dei post e l’invio di email. Tuttavia, non funziona come un vero servizio di sistema. Si attiva soltanto quando un utente visita una pagina del tuo sito web.

Sui portali con poco traffico i processi subiscono forti ritardi. Al contrario, sui siti ad alto traffico il cron virtuale appesantisce inutilmente ogni singola richiesta. Per risolvere questo problema, puoi leggere la nostra guida per risolvere l’errore di programmazione fallita con cron reale. In questo articolo imparerai come configurare un cron job di sistema per WordPress su cPanel e Plesk in modo definitivo.

Perché sostituire WP-Cron con un cron job reale del server

I limiti architetturali di WP-Cron

WP-Cron è stato progettato per funzionare su qualsiasi server senza configurazioni avanzate. Ogni volta che una pagina viene caricata, WordPress controlla le attività in sospeso. Se ci sono compiti da svolgere, il server avvia un processo secondario in background.

Questo meccanismo genera due criticità evidenti. Se nessuno visita il sito, le attività programmate rimangono bloccate per ore o giorni. Se invece ricevi picchi improvvisi di traffico, il server esegue controlli continui e ridondanti. Ciò causa rallentamenti nella navigazione e consuma risorse preziose della CPU.

I vantaggi concreti del cron reale

Un cron job di sistema viene gestito direttamente dal sistema operativo del server. L’esecuzione avviene a intervalli orari precisi e prefissati. Nessuna visita esterna è necessaria per attivare la coda dei lavori.

Grazie a questa architettura, la velocità di risposta del sito web migliora sensibilmente. I tempi di caricamento delle pagine diventano stabili e omogenei. Inoltre, i plugin di newsletter e backup lavoreranno in modo del tutto affidabile.

Disabilitare il cron virtuale nel file wp-config.php

Modificare il file di configurazione

Il primo passo fondamentale per configurare un cron job di sistema per WordPress consiste nel disattivare l’esecuzione automatica di WP-Cron. Questa operazione impedisce a WordPress di eseguire compiti a ogni visita degli utenti.

Accedi allo spazio web tramite il File Manager del tuo hosting o un client SFTP. Trova il file wp-config.php nella cartella radice del tuo sito. Aprilo con un editor di testo per inserire la direttiva necessaria.

La costante per disattivare WP-Cron

Scorri il codice del file fino a individuare la riga che precede il commento finale. Incolla la seguente stringa di codice PHP:

define('DISABLE_WP_CRON', true);

Salva le modifiche apportate e carica nuovamente il file sul server se hai usato un client SFTP. Da questo istante, il sistema virtuale di WordPress è completamente silenziato.

Avviso di sicurezza: Posiziona sempre la costante prima della riga con scritto /* That’s all, stop editing! Happy publishing. */. Se la inserisci dopo, la configurazione non avrà alcun effetto.

Guida passo dopo passo alla configurazione su cPanel

Individuare la sezione Cron Jobs

Passiamo ora alla procedura per configurare un cron job di sistema per WordPress tramite il pannello cPanel. Esegui l’accesso alla tua bacheca cPanel fornita dal provider hosting.

Scorri la schermata verso il basso fino alla sezione Avanzate. Clicca sull’icona denominata Operazioni pianificate o Cron Jobs. Si aprirà una schermata dedicata alla gestione temporale dei processi.

Impostare la frequenza di esecuzione

All’interno della pagina troverai diversi modelli preimpostati per la pianificazione temporale. Per la maggior parte dei siti web, una frequenza ogni 10 o 15 minuti è perfetta.

  • Ogni 10 minuti: Seleziona l’intervallo */10 * * * * per siti di commercio elettronico o portali dinamici.
  • Ogni 15 minuti: Scegli */15 * * * * per blog standard o siti aziendali classici.
  • Ogni ora: Adatto esclusivamente a siti vetrina statici con pochissimi aggiornamenti.

Inserire il comando del server

Nel campo di testo denominato Comando, inserisci la linea di comando per richiamare il file di sistema. L’opzione più performante utilizza l’eseguibile PHP del server:

/usr/local/bin/php -q /home/tuoutente/public_html/wp-cron.php >/dev/null 2>&1

Sostituisci tuoutente con lo username reale del tuo account cPanel. Se non conosci il percorso assoluto, puoi usare un comando basato su Wget o cURL:

wget -q -O - https://tuosito.it/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Fai clic sul pulsante Aggiungi nuova operazione pianificata per salvare la regola. Ora il server eseguirà il cron in modo totalmente autonomo.

Guida passo dopo passo alla configurazione su Plesk

Accedere a Operazioni Pianificate

La procedura per configurare un cron job di sistema per WordPress su server Plesk è altrettanto lineare. Effettua l’accesso alla dashboard del pannello Plesk con le tue credenziali.

Seleziona la scheda Siti Web e Domini dal menu laterale. Individua il dominio interessato e clicca sul pulsante Operazioni Pianificate o Scheduled Tasks.

Creare una nuova attività

Clicca sul pulsante verde Aggiungi attività situato in alto a sinistra. Plesk offre varie modalità di esecuzione molto semplici da configurare.

  1. Seleziona il tipo di attività denominato Esegui uno script PHP.
  2. Nel campo Percorso script, individua il file wp-cron.php presente nella directory httpdocs.
  3. Nel menu a tendina relativo alla versione di PHP, scegli la stessa versione attiva sul dominio.

Definire la cadenza temporale

Imposta la frequenza dell’operazione nella sezione relativa alla pianificazione. Puoi selezionare la modalità cronologica o inserire un’espressione cron personalizzata.

Digita */10 * * * * per eseguire lo script ogni dieci minuti esatti. Nella casella relativa alle notifiche, scegli Non inviare oppure notifica in caso di errori. Infine, clicca su OK per confermare e attivare l’operazione.

Verifica del funzionamento e risoluzione problemi

Controllare l’esecuzione dei processi

Dopo aver completato l’impostazione, devi verificare che tutto stia funzionando a dovere. Installa e attiva il plugin gratuito WP Crontrol dalla bacheca di WordPress.

Vai su Strumenti e poi su Eventi Cron per visualizzare la lista dei compiti registrati. Controlla che le attività imminenti vengano elaborate regolarmente senza mostrare avvisi di ritardo o blocchi.

Risolvere i permessi e percorsi errati

Se le attività risultano bloccate, verifica i permessi assegnati al file wp-cron.php sul server. I permessi raccomandati sono impostati a 644 per garantire la massima sicurezza.

Assicurati anche che il percorso all’interprete PHP sia corretto. Su alcuni server il binario non è posizionato in /usr/local/bin/php ma in /usr/bin/php. Puoi verificare il percorso corretto chiedendo assistenza al supporto del tuo provider.

Domande frequenti

Con quale frequenza temporale conviene eseguire il cron di sistema?

Per la maggior parte dei siti WordPress, un intervallo compreso tra 10 e 15 minuti è la scelta ottimale. Questa frequenza garantisce la puntualità dei post e limita il carico sul processore. Su negozi WooCommerce di grandi dimensioni puoi ridurre l’intervallo a 5 minuti.

È meglio eseguire il comando PHP CLI oppure una richiesta Wget?

Il comando PHP CLI è la soluzione migliore in assoluto. Esso esegue il file direttamente sulla macchina locale senza passare dallo stack del server web. In questo modo si azzerano i limiti legati ai timeout HTTP e ai sistemi firewall.

Cosa succede se dimentico di inserire la costante nel file wp-config.php?

Se non disabiliti WP-Cron, il sistema continuerà a eseguire controlli sia durante le visite degli utenti sia tramite il server. Questa ridondanza non crea errori fatali ma spreca inutilmente risorse computazionali. Disattivare WP-Cron nel file di configurazione è un passaggio caldamente raccomandato.

Articoli simili