我有一个页面,我正在使用分页。分页<较旧的帖子,较新的帖子>在我的页面上运行正常。 mysite.com/mypage/page/2即时获取相同模板文件的结果。现在我在category.php中做了同样的事情,但是当我点击下一页或上一页时:mysite.com/category/parent_cat/cat/page/2我要去index.php ...如何留在category.php并显示下一页的帖子?
这就是我使用它的方式:
<div id="previous_posts"><?php previous_posts_link( 'Neuere Beiträge' ); ?></div>
<div id="next_posts"><?php next_posts_link( 'Ältere Beiträge', $query->max_num_pages ); ?></div>
答案 0 :(得分:2)
在任何类型的存档页面上使用自定义查询替换主查询总是有问题的,从您可以看到的内容。您永远不应该更改任何存档页面或主页上的主查询。
请记住,存档页面包括category.php,author.php,taxonomy.php,archive.php,tag.php和date.php。
始终保持主循环和主查询。如果您需要更改这些页面上的查询,请使用pre_get_posts
来执行此操作,这是在主查询执行之前用于更改主查询的正确挂钩。
例如,如果您只在类别页面上每页只需要2个帖子,则可以将以下内容添加到您的functions.php
function custom_ppp( $query ) {
if ( !is_admin() && $query->is_category() && $query->is_main_query() ) {
$query->set( 'posts_per_page', '2' );
}
}
add_action( 'pre_get_posts', 'custom_ppp' );
答案 1 :(得分:0)
尝试使用此代码,我在category.php上添加了 新帖和旧帖的分页工作正在进行中。 只需要添加箭头css
sudo ./configure