如何从WP_Post对象获取缩略图?

Mad*_*iha 5 php wordpress

我试图在一定的分类下循环一堆页面.循环部分工作得很好,我得到了我需要的所有页面(很好地包装在WP_Post对象中).

但是,现在我面临着一个不同的问题.我想在编辑器中包含页面的缩略图.我试过的任意组合get,the,thumbnail,featured,image,_,-,我能想到的,都无济于事.

WP_Post对象相当新,缺乏文档.

任何人都可以阐明这个谜团吗?我的目标是最终显示一堆<figure>元素,包含图像,标题和每个对象的简短描述.

bra*_*ilo 8

以下只是短代码形式的概念证明.它会转储包含所有具有特色图像的帖子的代码块.

功能参考:has_post_thumbnail,get_the_post_thumbnail

add_shortcode( 'all-post-thumbs', 'so_14007170_dump_post_thumbs' );

function so_14007170_dump_post_thumbs( $atts, $content ) 
{
    // Query
    $posts = get_posts( array(
        'post_type'    => 'post',
        'numberposts'  => -1,
        'post_status'  => 'publish'
    ) );

    // Build an array of post thumbnails
    $thumbs = array();
    foreach( $posts as $post)
    {
        if( has_post_thumbnail( $post->ID) )
            $thumbs[] = array( $post->post_title, htmlentities(get_the_post_thumbnail( $post->ID ) ) );
    }

    // Build output and return
    $echo = '<pre>'. print_r( $thumbs, true ) . '</pre>';
    return $echo;
}
Run Code Online (Sandbox Code Playgroud)

结果前端:

var dump

有特色图片的帖子:

在此输入图像描述

  • 啊哈!这就是我要找的!`get_the_post_thumbnail`接受一个I​​D!(我真的很讨厌WordPress).谢谢!+25! (3认同)