Bonjour, je travaille à partir d’un thème personnalisé créé par mon prédécesseur et j’essaie d’ajouter une fonctionnalité de sous-titrage au thème, mais j’ai quelques problèmes avec cela. Actuellement, si j'insère une image dans un post et souhaite ajouter une légende, la légende apparaîtra juste à côté de l'image sans balises ni classes la contenant, voici une photo.
J'ai essayé de suivre un autre post et d'ajouter ce morceau de code au function.php et à mon single.php mais rien n'a changé.
function the_post_thumbnail_caption() {
global $post;
$thumbnail_id = get_post_thumbnail_id($post->ID);
$thumbnail_image = get_posts(array('p' => $thumbnail_id, 'post_type' => 'attachment'));
if ($thumbnail_image && isset($thumbnail_image[0])) {
echo '<span>'.$thumbnail_image[0]->post_excerpt.'</span>';
}
}
<?php the_post_thumbnail(); ?>
Que dois-je inclure pour implémenter correctement les légendes sous mes images?
Lorsque vous ajoutez une image avec une légende à l'éditeur de texte WP, vous devez ajouter un shortcode légende . est-ce le cas ici?
A partir de là, le code HTML en sortie devrait avoir des classes par défaut telles que wp-caption
. Vous pouvez ensuite styler votre légende en appliquant du code CSS à ces classes:
/* The wrapper <div> for the caption and captioned element. */
.wp-caption { }
/* The caption text. */
.wp-caption-text { }
/* An image within the caption (you might want to style other elements too). */
.wp-caption img { }
Voir ici: http://justintadlock.com/archives/2011/07/01/captions-in-wordpress
Vous pouvez également personnaliser la sortie HTML à l’aide du shortcode caption hook.