想想发生了什么。
你跑吧the_post();
其中设置$post
到循环中的第一个帖子,但如果侧栏处于活动状态,则不使用该帖子。然后循环继续$post
设置为循环中的第二个帖子。你失去了第一个帖子。
我不明白为什么第一个侧边栏需要在循环中。你只需要在have_posts
“循环激活”时运行代码的部分。这似乎就是你想要的:
if (have_posts()) {
$paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$i=1;
if ( is_active_sidebar(\'post_widget_area\') && $i==1 ) {
dynamic_sidebar(\'post_widget_area\');
}
while (have_posts()) {
the_post();
the_title();
the_excerpt();
if($i==3) {
get_sidebar(\'bottom\');
}
$i++;
}
if($i<4) {
get_sidebar(\'bottom\');
}
}
对不起。我必须将代码编辑成可读的内容,以便告诉大家发生了什么。
虽然我没有在代码中进行此更改,但您不需要$i
. $wp_query->current_post
已经有相同的信息0
不1
.