Añadir imagen thumbnail en el feed RSS WordPress
Veremos en este artículo cómo añadir en el Feed RSS de nuestro WordPress la imagen thumbnail del post o la noticia.
Y aquí va otro tutorial de programación WordPress en español.
Los Feed RSS en WordPress
Como sabéis, en WordPress hay la opción de seguir las noticias, añadiendo el feed a nuestro cliente de noticias (RSS Guard…). Todos los WordPress tienen esa posibilidad, y además proporcionan las noticias en diferentes formatos:
- https://vuestrodominio.com/?feed=rss
- https://vuestrodominio.com/?feed=rss2
- https://vuestrodominio.com/?feed=rdf
- https://vuestrodominio.com/?feed=atom
En cada uno de estos enlaces, tenéis el feed en el formato en cuestión (RSS, RSS2, ATOM o RDF)
En los feeds no vienen imágenes
Como sabéis, a la hora de escribir un post/noticia en vuestro worpdress, os permite asignar una imagen como destacada. Es la imagen que se utiliza cuando se listan las noticias.
El problema viene cuando queremos que esta imagen sea la que se liste o muestre en el feed de las noticias.
Hay plugins que lo hacen automáticamente, pero yo os voy a mostrar cómo hacerlo sin necesidad de instalar un enésimo plugin y hacer que funcione, añadiendo un código.
Código en functions.php
Lo que tenemos que hacer es buscar el fichero para modificarlo. Lo encontraremos en:
> Panel > Apariencia > Editor de temas > En la derecha veréis el functions.php
Lo pulsáis para editarlo, y añadís al inicio el siguiente código que es el que se encarga de hacer la tarea.
<?php
add_action('rss2_item', function(){
global $post;
$output = '';
$thumbnail_ID = get_post_thumbnail_id( $post->ID );
$thumbnail = wp_get_attachment_image_src($thumbnail_ID, 'thumbnail');
$output .= '<post-thumbnail>';
$output .= '<url>'. $thumbnail[0] .'</url>';
$output .= '<width>'. $thumbnail[1] .'</width>';
$output .= '<height>'. $thumbnail[2] .'</height>';
$output .= '</post-thumbnail>';
echo $output;
});
Guardáis, y visitáis el feed de vuestro WordPress donde veréis que se añade la imagen thumbnail en vuestro feed rss de WordPress
Más información