Plugin para WordPress: Miniposts destacados en el RSS

Wordpress 3 Comments »

Hacé unos días publiqué un tutorial para destacar con una etiqueta los miniposts de nuestro blog en el RSS generado, así nuestros lectores están advertidos que están ante un minipost y no se sorprenden debido a la poca longitud del mismo.

En ese tutorial, uno tenía que modificar el código base de WordPress, por lo que ante un update se perdían los cambios; así que hice un plugin para esto que basta con instalarlo y configurarlo.

Instalación:

Para instalar el plugin, solo hay que subir el archivo MinipostsRss.php en la carpeta wp-content/plugins de nuestro blog. Luego, activarlo desde nuestro panel en la sección de plugins.

Configuración:

Para configurarlo, hay que ir a MiniPosts en el RSS en la sección de Opciones (Settings) en el Panel. Ahí se pone el ID de la Categoría que queremos destacar (que se obtiene en la página de Categorías) y la etiqueta que queremos que aparezca (por defecto la etiqueta es [MiniPost])

Descargar Plugin: Destacar Miniposts en el RSS

Destacar los miniposts en el RSS de WordPress

Programación, Wordpress 2 Comments »

Los miniposts suelen ser una práctica muy útil en los blogs: permiten compartir ideas rápidas (a menudo links interesantes) sin la necesidad de escribir un post largo ni emitir opinión elaborada. Simplemente un comentario corto.

La forma en que reconocemos a los miniposts es por su diseño minimalista comparado con como se muestran los demás posts del blog. Usualmente, se omite el título del minipost y el link a los comentarios del mismo se presenta seguido. Al entrar al blog, uno los reconoce fácilmente. No obstante, si uno está suscripto vía el feed, la diferenciación es nula, y los lectores pueden quedar confundidos ante posts que son muy cortos. Es por eso que acá voy a explicar cómo diferenciar los miniposts en el RSS para que el lector pueda darse cuenta que se encuentra ante un post de este tipo.

Lo que haremos será básicamente dos cosas: mediante la función get_the_category de WordPress, definiremos si un post es un minipost, y si es así, haremos que aparezca antes del título en el RSS la leyenda [MiniPost]. Para esto último, solo tendremos que modificar el archivo feed.php en la carpeta wp-includes, que contiene las funciones para el feed.

Entonces, abrimos el archivo feed.php y buscamos la función get_the_title_rss() (en el feed.php original, está en la línea 114). Lo que habrá que agregarle a esa función es el siguiente código:

$Categorias = get_the_category();
	foreach($Categorias as $Categoria)
	{
		if($Categoria->cat_ID == ID_DE_LA_CATEGORIA_DE_MINIPOSTS)
		{
			$MiniPost = 1;
		}
	}
	if($MiniPost == 1){
		return "[MiniPost] ".$title;
	}
	else{
		return $title;
	}

Obviamente, tenemos que reemplazar el ID_DE_LA_CATEGORIA_DE_MINIPOSTS por el Id que corresponde a la categoría de nuestro blog.

Lo que hace el código es muy sencillo. Primero, mediante la función get_the_category, guardo las categorías del post en la variable Categorias. Con el foreach, recorro las categorías del post y comparo si alguna es igual a la categoría de los miniposts, y si es así, defino la variable $MiniPost = 1. Luego, comparo: si $MiniPost = 1, devuelvo [MiniPost] + El título de post en el RSS. Si $MiniPost no es igual a 1, solo devuelvo el título del post.

La función get_the_title_rss() completa, quedaría así:

function get_the_title_rss() {
	$title = get_the_title();
	$title = apply_filters('the_title_rss', $title);
	$Categorias = get_the_category();
	foreach($Categorias as $Categoria)
	{
		if($Categoria->cat_ID == ID_DE_LA_CATEGORIA_DE_MINIPOSTS)
		{
			$MiniPost = 1;
		}
	}
	if($MiniPost == 1){
		return "[MiniPost] ".$title;
	}
	else{
		return $title;
	}
}

Espero que les haya servido. Cualquier duda pueden dejarla en los comentarios.

Captura de los miniposts de Gran Ímpetu


Design by j david macor.com.Original WP Theme & Icons by N.Design Studio
RSS Comentarios RSS Acceder