Cheatsheet
Modifier le markup de la galerie d'image
Vous savez sans doute que WordPress permet d’insérer une galerie d’image directement à partir de la médiathèque. Cependant, le markup par défaut ne convient pas à tous les besoins. Aussi, il est possible de le modifier en filtrant le hook get_post_gallery
.
add_filter('post_gallery', function ($string, $attr) {
// On définit ici notre wrapper
$output = '<div class="grid gallery">';
// On récupère tous les ids des images de la galerie
$posts = get_posts([('include' => $attr['ids'], 'post_type' => 'attachment')];
// Puis pour chacune d'elle, génère la balise image avec les tailles qui conviennent pour notre usage
// Ici une miniature (medium) et une grande pour le zoom dans un data attribute
foreach($posts as $imagePost) {
$output .= '<img src="' . wp_get_attachment_image_src($imagePost->ID, 'medium')[0] . '" data-bp="' . wp_get_attachment_image_src($imagePost->ID, 'large')[0] . '">';
}
$output .= '</div>';
return $output;
});
Ce filtre permet vraiment de créer le markup selon nos besoin. Alternativement, si vous utilisez les galeries dans vos templates, il est possible d’utiliser get_post_gallery
.
Commentaires
Rejoignez la discussion !