Programmazione articoli mancante su WordPress: risolvere il problema del ‘missed schedule’



problema articoli programmati wordpress

Come risolvere il problema degli articoli di WordPress programmati, ma che non vengono pubblicati (messaggio ‘programmazione mancante’)

Una delle funzionalità utilissime (e direi quasi indispensabili) del cms WordPress è la possibilità di programmare gli articoli, ovvero di scriverli oggi e di pubblicarli in una data futura. In questo modo, per chi vuole aggiornare quotidianamente un blog, non è costretto ad essere ‘schiavo’ del blog stesso, per cui può scrivere anche vari articoli nella stessa giornata, quando ha tempo, per poi ‘spalmarli’ in maniera omogenea nelle ore e nelle giornate che vuole.

Per programmare un articolo basta cliccare su ‘modifica’ accanto alla scritta ‘pubblica subito’ nella colonna a destra rispetto all’editor di WordPress. Per modificare le date dei post programmati, basta andare (dalla colonna sinistra nel pannello di controllo WordPress) su Articoli – aggiungi nuovo, e poi nella pagina che appare, cliccare su ‘programmati’ (oppure direttamente su http://www.NOMEBLOG.com/wp-admin/edit.php?post_status=future&post_type=post con ovviamente il nome del vostroblog al posto di NOMEBLOG).

A molti blogger (compreso il sottoscritto) è però capitato di vedere l’odiosa scritta ‘programmazione mancante‘ (missed schedule) accanto al titolo di uno o più articoli programmati.

Articoli programmati in WordPress, che, dunque, NON vengono pubblicati.

-------------
-------------

Come fare per risolvere?

Il problema è nel file cron.php, che richiama il CRON, ovvero il responsabile dello scheduling, cioè la pianificazione di comandi in un server.

Per risolvere il problema, ci sono varie soluzioni.

Una facile facile è affidarsi ad un plugin;cercando ‘missed schedule’ dall’elenco dei plugin sul sito ufficiale di WordPress c’è il plugin WP Missed Schedule Fix Future Posts Scheduled Failed: controlla a distanza di 5 minuti se ci sono post programmati che non sono stati pubblicati e ne pubblica al massimo 5. Passati altri 5 minuti, rifa il controllo e se ci sono altri post mancanti, ne pubblica (sempre al massimo 5, per evitare di sprecare troppe risorse), e così via.

Altri plugin simili a Wp missed Schedule sono:

Altre soluzioni possono essere attuate seguendo la guida (scritta davvero bene) di Jessica Lambiase. Ve le sintetizzo qui sotto:

1) Cambiare i permessi della pagina wp-cron.php (visualizzabile digitando www.NOMEBLOG.com/wp-cron.php) in 0755, ovvero –rwx r-x r-x;

2) Verificare se ci sono dei plugin che entrano in conflitto con il cron: occorre disabilitarne uno alla volta, dalla pagina dei plugin (http://www.NOMEBLOG.COM/wp-admin/plugins.php ) e verificare che la pagina wp-cron.php appaia bianca o restituisca 200 OK. Se ciò’ avviene, vuol dire che quel specifico plugin disabilitato è la causa del problema e va disinstallato, altrimenti (se wp-cron.php restituisce una pagina d’errore, vuol dire che il plugin attuale disabilitato non crea problemi, e dunque può essere riattivato e il controllo andrà effettuato disabilitando il plugin successivo, e così via.

3) Verificare se è eccessiva la distanza tra l’orario del server e quella del blog (occorre aprire un ticket e richiedere spiegazioni allo staff tecnico del proprio fornitore di hosting

4) Aggiungere la riga

define(‘ALTERNATE_WP_CRON’, true);

nel file wp-cron.php, in modo da definire un wp-cron alternativo;

5) Aumentare il timeout del cron. Occorre modificare (da client ftp o direttamente online dal pannello di controllo del vostro fornitore di hosting) il file cron.php (che E’ DIVERSO DA wp-cron.php) presente nella cartella wp-includes/ .

Video:

Qui occorre sostituire

wp_remote_post( $cron_url, array('timeout' => 0.01
con la stringa
wp_remote_post( $cron_url, array('timeout' => 1.00 
o in generale con un valore più alto di 0.01.
Questa soluzione è quella che ho attuato io immediatamente, dato che a me era abbastanza palese che il problema era causato proprio da un timeout del cron.
L’ultima soluzione, quella più estrema, da attuare solo in caso d’emergenza più assoluta e solamente se nessuna di queste soluzioni elencate prima (compreso l’installazione del plugin WP Missed Schedule Fix Future Posts Scheduled Failed) non dà risultati positivi, è quella di DISABILITARE il wp-cron, aggiungendo in wp-config.php la stringa:
define('DISABLE_WP_CRON', true);
e creare un nuovo cron job dal pannello di controllo del provider di hosting del vostro blog.
L’operazione da effettuare è

wget -q -O - http://www.NOMEBLOG.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
GD Star Rating
loading...
Programmazione articoli mancante su WordPress: risolvere il problema del 'missed schedule', 10.0 out of 10 based on 1 rating
-------------

-------------

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Altro... cron, plugin wordpress, programmazione mancante
aumentare velocita wordpress
Velocizzare WordPress: wp super cache non basta, ci vuole anche la cache per i widget

 Plugin wordpress per diminuire i tempi di caricamento pagine e rendere più veloce Wordpress Chi...

Chiudi