Question

Je suis en train d'obtenir la pièce jointe suivante et précédente par l'utilisateur, il est en cours d'affichage, ce que je l'ai et il fonctionne très bien, sauf qu'il obtient toutes les pièces jointes au lieu de seulement ceux d'un utilisateur spécifique.

<p>
<?php $attachment_size = apply_filters( 'twentyten_attachment_size', 900 ); 
echo wp_get_attachment_image($post->ID, array( $attachment_size, 9999) ); // filterable image width with, essentially, no limit for image height.?>
</p>

<div id="next-prev-links"><div class="previmg"><?php previous_image_link(); ?></div><p id="previmgtxt" class="imgtxt"><?php previous_image_link(false, 'Previous Photo'); ?></p>
<div class="nextimg"> <?php next_image_link(); ?></div><p id="nextimgtxt" class="imgtxt"><?php next_image_link(false, 'Next Photo'); ?></p></div>
Était-ce utile?

La solution

Salut Amour @ Jeremy:

Bonne question! Et c'est une bonne question parce qu'il ne semble pas y avoir de crochets pour vous permettre d'écrire du code de filtrage par l'auteur.

Malheureusement, cela signifie de copier leur copie pour vos propres fonctions afin que vous puissiez faire le 1 changement de ligne requis (dans ce cas, il est 'post_author' => $post->post_author,) Voici les fonctions que vous devriez être en mesure d'utiliser.:

function yoursite_previous_image_link($size = 'thumbnail', $text = false) {
  yoursite_adjacent_image_link(true, $size, $text);
}
function yoursite_next_image_link($size = 'thumbnail', $text = false) {
  yoursite_adjacent_image_link(false, $size, $text);
}
function yoursite_adjacent_image_link($prev=true,$size='thumbnail',$text=false) {
  global $post;
  $post = get_post($post);
  $attachments = array_values(get_children( array(
   'post_author' => $post->post_author,
   'post_parent' => $post->post_parent, 
   'post_status' => 'inherit', 
   'post_type' => 'attachment', 
   'post_mime_type' => 'image', 
   'order' => 'ASC', 
   'orderby' => 'menu_order ID'
   )));

  foreach ( $attachments as $k => $attachment )
    if ( $attachment->ID == $post->ID )
      break;
  $k = $prev ? $k - 1 : $k + 1;
  if ( isset($attachments[$k]) )
    echo wp_get_attachment_link($attachments[$k]->ID, $size, true, false, $text);
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top