【发布时间】:2014-04-17 08:11:47
【问题描述】:
我有一个带有 wp_query 的循环,代码如下:
<?php
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query();
$wp_query->query("showposts=2&paged=$paged");
?>
<?php if ($wp_query->have_posts()) : while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
<?php the_title() ?>
<?php endwhile; ?>
<?php else: ?>
<article>
<h2><?php _e( 'Sorry, nothing to display.', 'theme' ); ?></h2>
</article>
<?php endif; my_pagination(); wp_reset_query()?>
标准分页:
<?php
function my_pagination()
{
global $wp_query;
$big = 999999999;
echo paginate_links(array(
'base' => str_replace($big, '%#%', get_pagenum_link($big)),
'format' => '?paged=%#%',
'current' => max(1, get_query_var('paged')),
'prev_text' => __('<i class="fa fa-chevron-left"></i>'),
'next_text' => __('<i class="fa fa-chevron-right"></i>'),
'total' => $wp_query->max_num_pages,
));
}
?>
分页在页面上显示正确,但是每当我点击分页链接时,它都会将我带到错误页面。
现在什么都试过了,不知道是什么原因。
非常感谢艾米的帮助
【问题讨论】:
-
当您将鼠标悬停在第 2 页的分页链接上时,URL 是什么?
-
所以你的分页输出看起来不错。问题必须与您的实际查询有关。您可以尝试删除 $wp_query->query("showposts=2&paged=$paged");然后看看你是否可以访问第 2 页
-
@henrywright,我已经完成了那一点,然后返回一个空循环。有趣的是,当我将 Setting->Reading 更改为较小的量时,似乎会对我的循环产生影响。我每页设置了 5 个项目。只有 7 个帖子,分页显示 3 页。似乎它忽略了 wp_query 但第三页显示 404。我现在迷路了。
-
如果您删除我建议的代码:
$wp_query->query("showposts=2&paged=$paged");并将$wp_query = new WP_Query();更改为$wp_query = new WP_Query( 'posts_per_page=2' );会返回一些结果吗?有了这个,你的分页应该工作
标签: php wordpress pagination