Retrasar la publicación en el Feed RSS

llanto

¿No te ha pasado que has publicado algo con algún error y cuando has querido arreglarlo ya lo había difundido el feed con el fallo?. A mi bastantes veces, sobre todo con los permalinks (lo peor), y luego si lo cambias ya nada evita que tu artículo se publique con un permalink feo o incorrecto en el feed.

Afortunadamente hay soluciones, y esta es tan simple como incluir el siguiente código en el fichero functions.php de tu theme:

/**
 * publica más tarde el contenido en el feed
 */
function publica_mas_tarde_en_feed($where) {
	global $wpdb;
	if ( is_feed() ) {
		// timestamp in WP-format
		$now = gmdate('d-m-Y G:i');
		// valor para la espera y dispositivo
		$wait = '5'; 
		// http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
		$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
		// agrega SQL-sytax al $where por defecto
		$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
	}
	return $where;
}

add_filter('posts_where', 'publica_mas_tarde_en_feed');
VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(3 votos, promedio: 5)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

12 comentarios en “Retrasar la publicación en el Feed RSS”

  1. Pingback: Bitacoras.com

  2. Ya lo creo que publico con errores con mucha frecuencia. Siempre leo lo escrito en procura de errores o para cambiar la idea de algun parrafo, pero no es raro para mi que lo publicado lleve algo que no debe tener.

    Preguntas para asegurarme: Esto actualiza el feed despues de pasado el tiempo que yo especifique luego de publicado ???, o sea, si le aplico 20 minutos, en 20 minutos sera que se actualizara el feed ???

  3. Primero quiero agradecer a Fernando por el artículo y a RaveN por la idea. He realizado un plugin a partir de este código. Es mi primer plugin, así que estoy bastante contento con él. No lo publicaré por 2 razones: 1- Lo hice sólo para aprender, es muy básico, no tiene opciones y no sé si será de utilidad. 2- Supongo que RaveN lo hará (si no entendí mal) y él tiene la prioridad. De todos modos me ha servido mucho.

    1. José, si es básico y no tiene opciones puede ser muy interesante para un principiante, puesto que lo entenderá mejor, y los "gurús" siempre pueden perfeccionarlo.

      GPL dixit.

    2. Yo sólo daba la idea, porque me parece más que interesante 🙂

      Para hacerlo público e incluirlo en el listado de WordPress, tienes que seguir los pasos de http://wordpress.org/extend/plugins/about/ y hacer un archivo readme que siga la estructura de los ejemplos.

      Sería interesante ponerle un panel de opciones donde pudiéramos modificar el tiempo de publicación, para que cada uno lo pueda configurar a su gusto 🙂

  4. Ok, aquí les dejo un enlace para la descarga. Supongo que habrá que hacerle alguna corrección pero eso ya lo dejo en sus manos, así como la forma de hacerlo público.

    Gracias

  5. Gracias, gracias, mil gracias. Si hubiese tenido esto hoy al mediodía…

    Se entiende que si uno se equivoca al darle a publicar y después cambia el estado del post a draft (por ejemplo) antes de que pase el tiempo configurado en el código entonces el post no se publica en el feed, ¿no?

    Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido