我有一个索引。php中有一篇特色文章和许多其他文章,底部有标准的wp\\U pagenavi。
我使用的是wordpress codex 像这样:
<?php $my_query = new WP_Query(\'category_name=featured&posts_per_page=1\');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;?>
<!-- Do stuff... -->
<?php endwhile; ?>
<!-- Do other stuff... -->
<?php if (have_posts()) : while (have_posts()) : the_post();
if( $post->ID == $do_not_duplicate ) continue; ?>
<!-- Do stuff... -->
<?php endwhile; endif; ?>
如果我正确地阅读了主题层次结构,则会创建一个存档。在分页部分单击“上一页”时应使用php页面。。。(正确吗?)
然而,事实并非如此,单击“上一步”会显示一个与索引布局相同的页面。php,因此具有相同的特色帖子。(不过,在其他帖子上分页确实有效)
我一直在胡闹is_paged
但还没能让它工作。。。谢谢你的帮助!
最合适的回答,由SO网友:Stephen Harris 整理而成
简而言之,否-使用的模板基于查询,分页时基本上是重复相同的查询,但针对不同的页面。通常,模板是相同的。
archive.php
可用于大多数查询,但通常存在更好的模板(例如类别模板、标记模板、作者模板等)。更可取的是由template hierarchy. 然而,对于主页,index.php
经常使用,模板将保留分页。
至于只显示“第1页”上的内容,您可以尝试以下操作:
<?php
//initialize $do_not_duplicate
$do_not_duplicate=0;
//is_paged returns true if we are on page 2,3,...
if(!is_paged()):
//Get featured content for page 1
$my_query = new WP_Query(\'category_name=featured&posts_per_page=1\');
while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;
//Do stuff...
endwhile;
endif;
//Display rest of content
if (have_posts()) :
while (have_posts()) : the_post();
if( $post->ID == $do_not_duplicate ) continue;
//Do stuff
endwhile;
endif;
?>
未测试