WordPress ofrece la posibilidad de asignar una imagen destacada, post thumbnail en el argot de WordPress, a cada post, lo cual da mucha flexibilidad a la hora de mostrar el contenido y esta imagen de manera independiente.
Para manejar las imágenes destacadas hay distintas funciones, pero ninguna de ellas permite obtener la descripción, o caption, que podemos añadir a la imagen en el administrador de WordPress. Para obtener la descripción, y otras informaciones de una imagen destacada, tenemos que recurrir a la función genérica get_post
.
Por ejemplo, para obtener la imagen destacada y su descripción podemos usar el siguiente código:
if ( has_post_thumbnail() ) { // si el post tiene asignada una imagen destacada $img_size = "large"; $img_id = get_post_thumbnail_id( $post->ID ); $img_caption = get_post($single_img_id)->post_content; if ( $single_img_caption != '' ) { $single_img_caption_out = "<figcaption>" .$single_img_caption. "</figcaption>"; } else { $single_img_caption_out = ""; } echo " <figure> " .get_the_post_thumbnail( $post->ID, $single_img_size ) . $single_img_caption_out. " </figure> "; }
2 comentarios
Buen día, ese código va en functions.php de mi tema, en el single.php o en el codex de wordpress?
Hola Wilfred, el código va en la plantilla donde quieras mostrar la imagen y su descripción: en el single.php para la página de un post, en el index.php para mostrar en portada, etc.
Si haces una función y quieres usarla en varios sitios, tendrás que meterla en functions.php.