Consejos para Personalizar y Optimizar el Feed de Tu Blog
Spanish (Español) translation by Eva Collados Pascual (you can also view the original English article)
Cuando diseñamos nuestros blogs, tendemos a olvidarnos de las visitas o usuarios que nos siguen a través de sus lectores de feeds. En este tutorial, vamos a aprender a "hackear" el feed de nuestro blog para ofrecer una mejor experiencia de lectura a nuestros usuarios.
Vamos a trabajar con 10 excelentes trucos para personalizar nuestros feeds. Rediseñaremos el contenido de nuestro feed, quizá lo abreviemos, crearemos funciones específicas y aplicables únicamente al contenido del feed y del blog, añadiremos útiles listados de artículos, por ejemplo, "artículos relacionados" y "más artículos del mismo autor", tomaremos precauciones contra los ladrones de contenido, aprenderemos a hacer dinero con nuestro feed, etc.
Nota: Muchos de estos consejos requieren que tengas la capacidad de editar tu archivo functions.php. Ten cuidado mientras lo editas, deberías estar acostumbrado y sentirte cómodo editando y depurando código PHP. Recuerda, haz antes una copia de seguridad.
Consejo nº1 Usar la Especificación Media RSS
Lo primero es lo primero: Tenemos que usar esta especificación para ayudar a que los motores de búsqueda y a las redes sociales encuentren nuestra "imagen destacada" (o al menos, la primera imagen que hayamos usado) y a que la muestren en forma de imagen de miniatura.
Para llevar a cabo este primer consejo, no tenemos que escribir código o modificar los archivos de nuestro tema. Solo necesitamos instalar el plugin MediaRSS WordPress. Hecho.
Introducida por Yahoo! en 2004, esta especificación nos permite definir el o los archivos media que queramos incluir: archivos de Podcast, vídeos y en nuestro caso, la imagen destacada. Este plugin añade automáticamente la imagen destacada a nuestro feed con las etiquetas MRSS válidas en XML. Si la entrada no tiene ninguna imagen destacada asignada, la escaneará para seleccionar una imagen de su contenido y la añadirá a nuestro feed.
Consejo nº 2 Colocar Texto o Imágenes Personalizados
Una cosa increíblemente útil es añadir contenido personalizado a nuestros feeds. Podemos colocar banners, avisos sobre copyright, un enlace a la entrada original… además es algo muy fácil de conseguir.
Echa un vistazo a la siguiente función:
<?php function custom_feed_content($content) { if(is_feed()) { // Our code... Don't forget to store the output to a variable - $output is our variable in this example. $content = $content.$output; } return $content; } add_filter('the_content','custom_feed_content'); ?>
Por favor ten en cuenta que prácticamente todas las herramientas para la lectura de feeds omiten etiquetas HTML potencialmente peligrosas, por ejemplo <script>, <embed> o <iframe>.
Añadir Banners
Colocar banners publicitarios o imágenes sobre tus novedades o lanzamientos podría ser una buena idea ya que tus suscriptores no verán tus anuncios personalizados a no ser que visiten tu sitio web. Para añadir este tipo de banners, todo lo que tienes que hacer colocar el código HTML adecuado antes o después de tu contenido:
<?php function feed_banners($content) { if(is_feed()) { $output = '<div><a href="#" title="This title will show up if the reader rolls over the image"><img src="..." alt="Alternate text if the image link doesn\'t show up" /></a></div>'; $content = $output.$content; } return $content; } add_filter('the_content','feed_banners'); ?>
Observa como hemos colocado la variable $output
justo antes de la variable $content
. En consecuencia nuestros banners aparecerán sobre el contenido, obvio.
Añadir un Aviso de Copyright Con un Enlace a la Entrada Original
Los rastreadores de contenido automáticos (scrapers) definitivamente odiarán este código.
<?php function feed_copyright_disclaimer($content) { if(is_feed()) { $permalink = get_permalink(); $author = get_the_author(); $title = get_bloginfo('name'); $output = '<p>This post is originally written by ' . $author . ' at <a href="' . $title . '">' . $permalink . '</a>. Please respect his authoritah.</p>'; $content = $content.$output; } return $content; } add_filter('the_content','feed_copyright_disclaimer'); ?>
Siempre resulta tentador colocar este tipo de avisos antes del verdadero contenido pero debes recordar que las aplicaciones de lectura de feeds como Google Reader muestra al principio de los elementos del feed aquellos contenidos compuestos por texto en la lista de feeds de entradas. (Aunque colocar imágenes antes del contenido es seguro). Esto podría resultar molesto para tus suscriptores:



Si no quieres que ocurra esto, deberías colocar tus avisos después del contenido.
Consejo nº3 Incluir Valores en Campos Personalizados
Imagina que estás escribiendo una reseña sobre un libro y quieres incluir algunos campos personalizados bajo el contenido principal que usarás para almacenar detalles sobre los libros que valores. Este código te podría resultar útil:
<?php function custom_fields_in_feed($content) { if(is_feed()) { $post_id = get_the_ID(); $output = '<div><h3>Details of the Book</h3>'; $output .= '<p><strong>Author of the book:</strong> ' . get_post_meta($post_id, 'book_author', true) . '</p>'; $output .= '<p><strong>ISBN:</strong> ' . get_post_meta($post_id, 'book_isbn', true) . '</p>'; $output .= '<p><strong>Published in:</strong> ' . get_post_meta($post_id, 'book_year', true) . '</p>'; $output .= '</div>'; $content = $content.$output; } return $content; } add_filter('the_content','custom_fields_in_feed'); ?>
Edita el código según tus necesidades y úsalo, no olvides editar los nombres de los campos personalizados dentro de las funciones get_post_meta
.
Consejo nº4 Añadir una Sección "Artículos Relacionados"
Existen varias funciones personalizadas para crear una lista de entradas o artículos relacionados usando plugins, a mi personalmente me gusta "Yet Another Related Posts Plugin (YARPP)" que puede añadir automáticamente una sección "Artículos relacionados" a nuestro feed. Instala el plugin, dirígete a su página de opciones (Options > Related Posts (YARPP)) y crea tus ajustes.



Así de sencillo.
Consejo nº5 Añadir una Sección "Más Artículos del Mismo Autor"
Esto puede ser muy útil para blogs en los que participan varios autores. Y de nuevo, es muy fácil de implementar:
<?php function authors_post_list_in_feed($content) { if(is_feed()) { global $post; $author = get_the_author(); $author_id = $post->post_author; $the_posts = get_posts('author=' . $author_id . '&numberposts=5'); $output = '<h3>More From ' . $author . '</h3>'; $output .= '<ul>'; foreach($the_posts as $post) { $permalink = get_permalink(); $title = get_the_title(); $output .= '<li><a href="' . $permalink . '">' . $title . '</a></li>'; } wp_reset_query(); $output .= '</ul>'; $content = $content.$output; } return $content; } add_filter('the_content','authors_post_list_in_feed'); ?>
Esta pieza de código en nuestro archivo functions.php añade una sección "Más de John Doe" justo bajo el contenido del artículo.
Consejo nº6 Añadir Botones para Compartir en Redes Sociales



Si publicas artículos completos en tus feeds (en lugar de sus extractos), sería aconsejable proporcionar a tus suscriptores unos botones para que puedan compartir el contenido en redes sociales. Como hemos mencionado antes, los servicios de lectura de feeds omiten las etiquetas <script>
e <iframe>
, así que solo podemos insertar enlaces <a>
que tengan aspecto de botones.
Facebook, Twitter, Google+, y Pinterest son actualmente las redes sociales más populares. Así que inserta los botones para compartir de estas redes en tus feeds:
<?php function feed_share($content) { if(is_feed()) { $permalink = get_permalink(); $title = get_the_title(); $get_thumbnail = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail'); $thumbnail = $get_thumb[0]; $blogname = get_bloginfo('name'); $button_facebook = '<a href="http://www.facebook.com/sharer.php?u=' . $permalink . '&t=' . $title . '"><img src="http://i.imgur.com/NoudJ.png" alt="Share this post on Facebook" /></a> '; $button_twitter = '<a href="http://twitter.com/home?status=' . $permalink . ' - ' . $title . '"><img src="http://i.imgur.com/x5VsF.png" alt="Share this post on Twitter" /></a> '; $button_gplus = '<a href="https://plusone.google.com/_/+1/confirm?url=' . $permalink . '"><img src="http://i.imgur.com/DRhjW.png" alt="Share this post on Google+" /></a> '; $button_pinterest = '<a href="http://pinterest.com/pin/create/button/?url=' . $permalink . '&media=' . $thumbnail . '&description=' . $title . ' » ' . $blogname . '"><img src="http://i.imgur.com/WL45z.png" alt="Share this post on Pinterest" /></a> '; $output = $button_facebook . $button_twitter . $button_gplus . $button_pinterest; // You can sort or remove the buttons from here. Just play with the variables. $content = $content.$output; } return $content; } add_filter('the_content','feed_share'); ?>
Yo he diseñado algunos botones para este tutorial pero por supuesto, puedes usar tus propias imágenes o diseño. Para cambiar la imagen simplemente cambia los enlaces http://i.imgur.com/XXXXX.png
.
Por favor, observa que si quieres que este código funcione la funcionalidad de las miniaturas ("thumbnails") de WordPress debe que estar habilitada. Si esta funcionalidad no está habilitada en tu tema, encontrarás un mensaje "fatal error" en tu feed. Asegúrate de que la siguiente línea existe dentro de tu archivo functions.php:
<?php add_theme_support('post-thumbnails'); ?>
Consejo nº7 Imagen de Miniatura y Extracto… y Nada Más
Menos es más, ¿cierto?
<?php function feed_less($content) { if(is_feed()) { $permalink = get_permalink(); $post_id = get_the_ID(); $click = '<br /><br /><a href="'.$permalink.'">Click here to see the full content.</a>'; if(has_post_thumbnail($post_id)) { $get_thumbnail = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail'); $thumbnail = '<img src="'.$get_thumbnail[0].'" style="float:left;margin:0 10px 10px 0;" alt=" " />'; $excerpt = get_the_excerpt(); $content = '<div>'.$thumbnail.$excerpt.$click.'<div style="clear:both;height:0;line-height:0;"></div></div>'; } else { $content = the_excerpt_rss().$click; } } return $content; } add_filter('the_content','feed_less'); ?>
¡Esta es mi función favorita! Con este código, los elementos de tus feeds solo consistirán en tres elementos: una imagen en miniatura alineada a la izquierda, el extracto del artículo y un enlace hacia el mismo. Nada más.
Consejo nº8 Contenido Exclusivo del Feed y Contenido Exclusivo para el Blog
Otra función sencilla pero útil, realmente aquí tenemos dos funciones:
<?php function feedonly_sc($atts,$content) { if(is_feed()) { return $content; } else { return ''; } } add_shortcode('feedonly','feedonly_sc'); function blogonly_sc($atts,$content) { if(!is_feed()) { return $content; } else { return ''; } } add_shortcode('blogonly','blogonly_sc'); ?>
Sencillamente añade este fragmento de código a tu archivo functions.php y podrás usarlo de la siguiente forma:



Consejo nº9 Añadir un Secreto Dispositivo de Seguimiento a Tus Feeds
Si tienes un exitoso blog con contenido de calidad que actualizas con frecuencia, es muy posible que tengas algunos "buitres de contenido" que recojan tus feeds y actualicen sus splogs (blogs spam) de forma automática con tu propio contenido. Puedes localizarlos realizando una búsqueda con frases concretas que aparezcan en tu contenido, pero es mucho más fácil si cuentas con una única clave para todas ellas, ¿no?
En este caso, el único código que necesitamos es la cadena de nuestros shortlinks convertida en caracteres y números, por ejemplo, myblog.com/?p=1234). También lo enlazaremos a nuestro artículo, haciendo que el enlace sea de color blanco de forma que los splogs no sepan qué hay ahí. (Por supuesto, podríamos enlazar a una imagen en blanco e indicar en el texto alt
la cadena de números y caracteres del shortlink, pero al hacerlo así sería más difícil seguirlo).
<?php function secret_feed_tracker($content) { if(is_feed()) { $hash = md5(wp_get_shortlink()); $permalink = get_permalink(); $content = $content . ' <a href="' . $permalink . '" style="color:white">' . $hash . '</a>'; } return $content; } add_filter('the_content','secret_feed_tracker'); ?>
Tras añadir este código a tu archivo functions.php, suscríbete a tu propio feed, localiza el texto oculto al final de tu artículo y búscalo en tu motor de búsqueda favorito (Google, Yahoo!, etc.).
Consejo nº10 Coloca Unidades para Anuncios de AdSense en Tus Feeds
Si tienes una cuenta en AdSense (te aconsejo que la tengas) y has conectado tu feed con FeedBurner (deberías hacerlo), podrías monetizar también tus feeds colocando anuncios de Google AdSense antes o después de los elementos de tu feed. Cuando te registres en tu cuenta AdSense, lo demás será tan fácil como contar hasta 3:



Después de hacer clic sobre el botón "New feed unit" (3), podrás seleccionar tu feed (que tiene que estar previamente conectado con la cuenta de Google que estés usando en AdSense) elige el tipo de anuncio, y la ubicación, los colores y la frecuencia para tus anuncios.
¿Algo más?
Espero que hayas disfrutado con estos consejos. Si tienes tus propias técnicas para optimizar los feeds de WordPress, no dudes en compartirlas dejándonos un comentario.
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Update me weekly