web-dev-qa-db-fra.com

Fonction permettant d'appeler l'image de pièce jointe à partir du message

Salut tout le monde, je ne peux pas voir l’image de la publication (elle est attachée à la gravité comme une post-image) avec cette fonction. Je vois l’icône d’image manquante avec le titre et le lien de travail, mais pas d’image miniature.? Il est supposé être plus ou moins (les 2 derniers articles de l'auteur dans la zone du widget), je suppose que le problème est ici:

$output .= '<img src="' .  wp_attachment_is_image( $post_id ) . '" alt="" />';

Alors aidez-moi s'il vous plaît: D

function get_related_author_posts() {
global $authordata, $post;

$authors_posts = get_posts( array( 'orderby' => 'Rand', 'author' => $authordata->ID, 
'post__not_in' => array( $post->ID ), 'posts_per_page' => 2 ) );

$output = '<ul class="post_related">' . "\n";
foreach ( $authors_posts as $authors_post ) {
    $output .= '<li><a href="' . get_permalink( $authors_post->ID ) . '" title="' . 
apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '">';
    $output .= '<img src="' .  wp_attachment_is_image( $post_id ) . '" alt=""
/>';
    $output .= '</a></li>' . "\n";
}
$output .= '</ul>';

return $output;
}
4
jimilesku

Dois-je bien comprendre que vous entendez une vignette sélectionnée pour un message et non une image attachée?

Voir get_the_post_thumbnail() et votre utilisation ressemblera à ceci:

$output .= get_the_post_thumbnail( $authors_post->ID );
1
Rarst

Vous pouvez utiliser wp_get_attachment_image_src() directement dans votre code actuel:

$output .= '<img src="' .  wp_get_attachment_image_src( $attachment_id, $size ) . '" alt="" />';

Ou vous pouvez utiliser wp_get_attachment_image() à place de votre code actuel:

$output .= wp_get_attachment_image( $attachment_id, $size );

Notez que dans les deux cas, vous devrez récupérer l'ID de pièce jointe d'une manière ou d'une autre. La méthode la plus directe sera probablement get_posts() , par exemple:

$attachments = get_posts( array(
    'post_parent' => $post->ID,
    'post_type' => 'attachment',
    'post_mime_type' => 'image'
) );

Ce qui retournera un tableau d'objets d'attachement.

4
Chip Bennett