La programación en WordPress para la publicación de entradas en determinada fecha/hora, puede ser muy útil. En esta ocasión veremos una de las opciones para hacer que la programación de post en WordPress vuelva a funcionar de forma correcta.
Nos ponemos en situación
Venga, va, te has tirado un buen rato investigando, escribiendo y buscado fotos para esa fantástica entrada en el blog, preparas la programación para que el post se muestra a la hora adecuada y te das cuenta que pasada esa hora, tu entrada no aparece publicada.
Así que toca investigar que es lo que puede estar pasando y tras una búsqueda rápida a través de google, vemos que un posible problema puede ser el uso de un plugin de cache, como puede ser WP Super Cache, W3 Total Cache o el WP Fastest Cache (que es el que usamos en este blog).
¿Cual es el motivo del error?
El cron de wordpress (el desencadenante de hacer la publicación) es un fichero llamado wp-cron.php y se ejecuta cuando carga una página de tu WordPress.
Pero al utilizar esos plugins de cache, el fichero queda cacheado y no carga cuando debería, dando así el resultado de la no publicación del post.
La solución
Vale, ya sabemos que es lo que pasa y ahora toca solucionarlo. ¿Qué hacemos?
Pues tenemos dos opciones la más sencilla instalar alguno de los plugin disponibles para que el cron de WordPress funcione.
Algunos de ellos son:
WP Control
WP-Cron Status Checker
Hay multitud de plugins para realizar estas tareas, te animo a que busques el que mejor se adapte a tus necesidades.
La segunda opción y la que hemos usado en este blog, es configurar el cron a través de del hosting.
Dependiendo del panel de control que tengas en tu hosting, la manera crear la tarea cron puede variar, nosotros vamos a verlo sobre el panel de control Plesk.
Entraremos en la administración del hosting y accederemos a la opciones del sitio, buscaremos una opción que ponga tareas programas, cron o algo similar.
En nuestro caso se llama «Tareas programadas» (como puedes ver en la imagen superior), y en la nueva ventana pulsaremos el botón de «nueva tarea».
Cubriremos los datos en la pantalla que te aparece teniendo en cuenta cubrir los datos necesarios, si vamos a utilizar un comando cron, dejaremos marcada la primera opción «Ejecutar un comando», así como el periodo en el que queremos que se ejecute.
Como puedes ver en la pantalla además podemos poner una descripción a la tarea y hacer que nos avise cada vez que se ejecute (siempre o solo cuando de error).
El comando que tienes que poner es:
wget -O /dev/null http://tudominio.com/wp-cron.php?doing_wp_cron
¿Y eso es todo?
Pues si en principio eso es todo, salvo por un pequeño detalle, si usas un certificado de seguridad ssl, puede que tengas problemas con la tarea cron y no te funcione correctamente
Para solucionar este error, nos bastará modificar el comando dejándolo de esta manera:
wget –no-check-certificate -O /dev/null https://tudominio.es/wp-cron.php?doing_wp_cron
Ahora ya debería de funcionar correctamente las publicaciones programas en tu WordPress, y se es así, esta publicación la veréis a partir del domingo 24 de mayo a las 14:00h.