Función para llamar a la imagen adjunta desde la publicación

4

Hola a todos, no puedo ver la imagen de la publicación (se adjunta a través de la forma de gravedad como una imagen posterior). Con esta función veo el icono de la imagen que falta con el título y el enlace de trabajo, pero no la imagen en miniatura. ? Se supone que es más o menos (los últimos autores 2 últimas publicaciones en el área del widget) Sospecho que el problema está aquí:

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

Por favor, ayúdame: 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;
}
    
pregunta jimilesku 20.05.2011 - 11:10

2 respuestas

1

¿Entiendo bien que te refieres a la imagen en miniatura destacada de una publicación y no solo a cualquier imagen adjunta?

Consulte la función get_the_post_thumbnail() y su uso será algo como esto:

$output .= get_the_post_thumbnail( $authors_post->ID );
    
respondido por el Rarst 20.05.2011 - 17:47
4

Puede utilizar wp_get_attachment_image_src() directamente en su código actual:

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

O puede usar wp_get_attachment_image() en place de su código actual:

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

Tenga en cuenta que, en ambos casos, tendrá que recuperar el ID del archivo adjunto de alguna manera. El método más directo probablemente será get_posts() , por ejemplo:

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

Lo que devolverá una matriz de objetos adjuntos.

    
respondido por el Chip Bennett 19.07.2011 - 20:33

Lea otras preguntas en las etiquetas