J'ai le code suivant sur mon site.
<?php // image gallery content
if( has_shortcode( $post->post_content, 'gallery' ) ) {
$gallery = get_post_gallery_images( $post->ID );
$image_list = '<ul id="cfImageGallery">';
foreach( $gallery as $image ) {// Loop through each image in each gallery
$image_list .= '<li><img src=" ' . str_replace('-150x150','',$image) . ' " /></li>';
}
$image_list .= '</ul>';
echo $image_list;
}
?>
Mon problème est que get_post_gallery_images retourne des fichiers thumbs au lieu de la taille de remplissage, donc Im utilise la fonction str_replace pour le résoudre.
Comment puis-je faire pour récupérer les URL en taille réelle?
Merci
Si vous travaillez dans un fichier de modèle, ce code devrait fonctionner. Cependant, je ne l'ai pas testé.
<?php echo do_shortcode('[gallery size="full"]'); ?>
@ tfer77 a donné la bonne réponse. Je suis ici pour l'expliquer d'une meilleure façon.
Vous devez ajouter l'attribut size="full"
au shortcode de la galerie dans le contenu du message, comme
[gallery ids="836,830,829" size="full"]
Maintenant, quand vous utilisez
$gallery = get_post_gallery_images( $post->ID );
Vous obtiendrez des images en taille réelle. Vous pouvez vérifier la même chose en utilisant le filtre get_post_gallery
Collez le code ci-dessous dans le fichier functions.php de votre thème.
add_filter( 'get_post_gallery', 'wpse_get_full_size_gallery_images', 10, 3 );
function wpse_get_full_size_gallery_images( $gallery, $post, $galleries ) {
var_dump($gallery);
}
et la page où vous avez utilisé get_post_gallery_images
, vous obtiendrez une URL d’image comme
http://www.siteurl.com/wp-content/uploads/2013/10/eiffel-tower.jpg
plutôt que
http://www.siteurl.com/wp-content/uploads/2013/10/eiffel-tower-150x150.jpg