如何在wordpress中使用get_post()将get_template_part()用于特定帖子?

我正在创建我的第一个wordpress主题。我目前正在使用循环和get_template_part()来显示我的帖子列表, 如下所示:

while ( have_posts() ) {
    the_post();
    get_template_part( 'content', get_post_format() );
}

这很好用, 并且正在加载content.php作为发布模板。

我想在常规帖子输出的末尾使用get_template_part()显示特定帖子。我添加了此内容, 以便在我的while循环后显示ID为123的帖子:

get_post(123);
get_template_part( 'content', get_post_format() );

因此, 总代码为:

while ( have_posts() ) {
    the_post();
    if($post->ID != 123) // exclude Post 123 from output
        get_template_part( 'content', get_post_format() );
}

get_post(123);
get_template_part( 'content', get_post_format() );

但这只是重复了常规循环中的最后一个Entry。有人可以帮忙吗?

谢谢, 并问候Jan


#1


这是有效的解决方案:

global $post; 
$post = get_post(123); 
setup_postdata($post);
get_template_part( 'content', get_post_format() );

https://codex.wordpress.org/Function_Reference/setup_postdata

来源:

https://www.srcmini02.com/66825.html

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?