Donc, avec mon blog, j'ai une page avec photo en pièce jointe mais elle ne montre que les photos à la fois, et ces deux photos sont utilisées comme navigation et je déteste ça.
Je veux que la page de pièce jointe montre toutes les photos qui vont avec le reste de cet ensemble.
Voici le code actuel
<div id="nav-images" class="navigation clearfix">
<div class="nav-next"><?php next_image_link() ?></div>
<div class="nav-previous"><?php previous_image_link() ?></div>
Comment puis-je changer cela pour afficher toutes les pièces jointes?
Votre code et votre description semblent faire référence à la pièce jointe précédente/suivante . Ce code est destiné à afficher la navigation de pièce jointe précédente/suivante , et c'est exactement ce que cela fait.
Si vous souhaitez afficher toutes les pièces jointes:
[gallery]
Par programme, dans le fichier de modèle, utilisez par exemple get_posts()
, associé à ex. wp_get_attachment_image()
:
<?php
global $post;
$attachment_images = get_posts(
'post_type' => 'attachment',
'post_parent' => $post->post_parent,
'post_mime_type' => 'image'
);
// Output images
?>
<ul>
<?php
foreach ( $attachment_images as $attachment_image ) {
// Output images here. Note that get_posts()
// returns an array of OBJECTS, so the ID
// would be $attachment_image->ID
echo '<li>' . wp_get_attachment_image( $attachment_image->ID, 'thumbnail' ) . '</li>';
}
?>
</ul>
Bonjour Chip, Malheureusement, cela n'a pas fonctionné, mais je l'ai finalement trouvé après des heures et des heures de recherche.
Vous devez d’abord ajouter le code ci-dessous au fichier functions.php
function show_all_thumbs() {
global $post;
$post = get_post($post);
/* image code */
$images =& get_children( 'post_type=attachment&post_mime_type=image&output=ARRAY_N&orderby=menu_order&order=ASC&post_parent='.$post->post_parent);
if($images){
foreach( $images as $imageID => $imagePost ){
unset($the_b_img);
$the_b_img = wp_get_attachment_image($imageID, 'thumbnail', false);
$thumblist .= '<a href="'.get_attachment_link($imageID).'">'.$the_b_img.'</a>';
}
}
return $thumblist;
}
puis ajoutez le code ci-dessous à l'endroit où vous souhaitez afficher les vignettes.
<?php echo show_all_thumbs();?>
Désolé, je ne sais pas comment mettre tout le code dans la boîte, donc je devais brouiller chaque ligne :(