如何在Widget中显示某个帖子类型的最新帖子缩略图?

时间:2010-12-08 作者:Travis Northcutt

我用的是PHP Code Widget 插件,并希望创建一个小部件,为最近的“项目”帖子显示帖子缩略图(又名特色图片)。这是我到目前为止的代码,但它并没有产生预期的结果。这实际上没有输出任何内容。

<?php
global $post;
$args = array(
    \'post_type\' => \'project\',
    \'posts_per_page\' => 1,
    ); 
$thumbnails = get_posts($args);
foreach ($thumbnails as $post)
{
    setup_postdata($post);
        ?>
        <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail( \'thumbnail\' ); ?></a>
        <?php 
        }
有什么建议我需要改变这个工作吗?

1 个回复
最合适的回答,由SO网友:Rarst 整理而成

搬到这里,这样评论就不会变得一团糟。

基本上,这里有两件事可能出错:

获取帖子。检查一下$thumbnails 获取正确的帖子,并且只有一篇。我不确定这是否是问题所在,但是get_posts() 文档列表numberposts 参数而不是posts_per_page 列出的query_posts(). 这可能会有所不同。

处理全局变量。对于这种用法,我不会接触global$post 直接或与setup_postdata() 任何一个只需使用非循环版本的函数即可通过post id获取所需的内容-get_permalink()get_the_post_thumbnail().

结束