Este artículo tiene más de 2 años. Si contiene información técnica es posible que no se ajuste a las últimas versiones.

Mostrar la descripción de una imagen destacada en WordPress

La imagen más utilizada en WordPress es la imagen destacada que se le puede asignar a una entrada (sea página o entrada personalizada también). La finalidad de esta imagen es la de servir como representación visual de la entrada y se le asigna una serie de funciones adicionales para presentar en el tema (a través de las correspondientes plantillas). Para que nuestro tema tenga soporte para esta funcionalidad tan importante es esencial que se le añada soporte de manera específica a través de esta función:


add_theme_support('post-thumbnails');

Existen multitud de funciones para mostrar las imágenes destacadas en nuestras plantillas, siendo la más habitual the_post_thumbnail() que permite mostrar una imagen del tamaño que deseemos, siendo el tamaño miniatura (post-thumbnail) el predeterminado. Hay que recordar que cada vez que añadimos una imagen desde WordPress, este nos genera hasta 4 tamaños predeterminados de la imagen. También incluso es posible limitar la compresión que realiza de la imagen, a través del correspondiente filtro que podemos modificar:


// no realizar compresión a los archivos jpeg
add_filter('jpeg_quality', function($arg){return 100;});

Mostrar la descripción de una imagen en nuestra plantilla de WordPress

Primero por accesibilidad y segundo por indexación, es fundamental rellenar los apartados de texto alternativo y título de las imágenes. Además WordPress nos permite rellenar una leyenda de la imagen que podríamos utilizar en nuestras plantillas para ofrecer información adicional.

Insertar una leyenda en imagen de WordPress

Esta podría, con un poco de estilo CSS, ayudar mucho a la representación. El código que se incluye a continuación permite comprobar si existe una descripción de la imagen destacada en la entrada de WordPress y en su caso incluirlo en la imagen con las etiquetas HTML5 figure y figcaption.

Como se puede ver se hace uso de la función get_posts() para obtener el tipo de entrada “attachment” que como se puede comprobar es otro de los tipos de entrada que tiene WordPress. Para obtener la leyenda extraemos el valor del índice ‘post_excerpt’ y para obtener el campo descripción el correspondiente a ‘post_content’. Como nota adicional existe una función muy interesante para maquetación avanzada en WordPress que es wp_get_attachment_metadata(), que como su nombre indica permite extraer la información de tamaños de la imagen y también de la meta información que contiene el jpg, suponiendo que lo contenga.