Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php WordPress中自定义wp_查询的分页将转到404错误页_Php_Wordpress_Pagination - Fatal编程技术网

Php WordPress中自定义wp_查询的分页将转到404错误页

Php WordPress中自定义wp_查询的分页将转到404错误页,php,wordpress,pagination,Php,Wordpress,Pagination,Im有一个带有wp_查询的循环,代码如下: <?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()) :

Im有一个带有wp_查询的循环,代码如下:

<?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,
    ));
}
?>

也经历了一段艰难的时期:)当我意识到它计算的每页文章数是错误的时候,搜索就更容易了,下面是一个魔术:(添加到functions.php)


您可以更改查询

$wp_query= null; $wp_query = new WP_Query();
$wp_query->query("showposts=2&paged=$paged");


每页显示2篇文章,您可以查看和访问第2页。

自定义文章类型也有相同的问题。我有一个关于“页面模板”的查询,其中的分页是404。我想这里的主要问题是自定义帖子类型的“slug”与“页面模板”url相同。例如,如果您有一个自定义的post类型slug“portfolio”和一个同名的页面,则该页面上的分页将显示404。因此,我刚刚将“slug”改为“archives portfolio”,当您将鼠标悬停在第2页的分页链接上时,它会有所帮助,URL是什么?感谢您的分页输出看起来不错。问题一定出在您的实际查询上。能否尝试删除$wp_query->query(“showposts=2&paged=$paged”);然后看看你们是否能进入这个页面2@henrywright,我做了那个位,然后返回一个空循环。有趣的是,当我将设置->读取更改为较小的量时,似乎会对我的循环产生影响。我把每页设为5项。只有7篇文章,页码显示为3页。似乎它忽略了wp_查询,但第三页显示的是404。我现在迷路了。如果你删除我建议的代码:
$wp\u query->query(“showposts=2&paged=$paged”)和更改
$wp\u query=new wp\u query()
$wp\u query=新的wp\u查询('posts\u per\u page=2')这会返回一些结果吗?有了这一点,你的分页工作应该像一个魅力。感谢@Michal SThis这太棒了,他们保留了这么多后门来渗透输出,这就是为什么我喜欢wp;)+1显示分页链接,但单击链接后显示404。请帮帮我,这帮了我谢谢你!!我搜索了这么多答案,如果我从我的WP\u查询中取出每页的帖子,并将其粘贴在这里,这一条就行了!!用关键字
$query->set('s',$\u GET[“search”])搜索“s”不起作用这里给出404错误。根据官方文件:。。。每页文章数(int)-每页要显示的文章数(从2.1版开始提供,已替换showposts参数)。使用'posts_per_page'=>-1显示所有帖子(使用-1值忽略'offset'参数)。如果使用此参数后分页已关闭,请设置“paged”参数。注意:如果查询位于提要中,wordpress将使用存储的“posts\u per\u rss”选项覆盖此参数。要重新引入限制,请尝试使用“post\u limits”过滤器,或过滤“pre\u option\u posts\u per\u rss”并返回-1
$wp_query= null; $wp_query = new WP_Query();
$wp_query->query("showposts=2&paged=$paged");
$wp_query = new WP_Query("showposts=2");