代码中的逻辑错误。用简单的英语阅读您的代码。
如果当前帖子是3号,请显示我的自定义内容,否则,请正常显示帖子。
您想要的是以下内容
如果当前帖子是3号,请显示我的自定义内容。
正常显示我的所有帖子
要实现这一点,只需在语句中包装自定义内容。因此,您需要按照以下方式重写代码
<?php if ($count == 3) : ?>
<div id="latest-news" class="col-lg-4" style="height:480px;">
<h2>Latest News</h2>
</div>
<?php endif ?>
代码上的注释很少
showposts
折旧以支持
posts_per_page
请勿使用:
, endif
和endwhile
. 尽管它是完全有效的php,但由于大多数代码编辑器不支持这种语法,因此很难进行调试。使用老式卷发({}
). 它们受到所有代码编辑器的支持,易于调试
wp_reset_postdata()
应该去找你的endwile
和之前endif
. 原因是,如果你没有帖子,你不需要重置任何东西另一种方法就像另一个想法一样,您可以使用the_post
在第3篇文章之前添加自定义内容的操作。你也可以试试这样的
add_action( \'the_post\', function ( $post )
{
global $wp_query;
if ( $wp_query->post != $post )
return;
if ( 2 != $wp_query->current_post )
return;
echo \'<div id="latest-news" class="col-lg-4" style="height:480px;">
<h2>Latest News</h2>
</div>\';
});