首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WP_Query posts_per_page不适用于分页%1

WP_Query是WordPress中用于查询和获取文章的类。posts_per_page是WP_Query类中的一个参数,用于设置每页显示的文章数量。然而,它在某些情况下可能不适用于分页。

当使用posts_per_page参数时,WP_Query将返回指定数量的文章,并且不会考虑分页。这意味着如果设置了posts_per_page为10,无论当前是第几页,都只会返回10篇文章。这可能导致分页功能无法正常工作。

为了实现正确的分页功能,我们需要结合使用posts_per_page和paged参数。paged参数用于指定当前的页码。通过正确设置paged参数,我们可以在每一页上显示指定数量的文章,并且正确地分页。

下面是一个示例代码,展示了如何正确使用WP_Query的posts_per_page和paged参数来实现分页功能:

代码语言:txt
复制
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
    'posts_per_page' => 10,
    'paged' => $paged
);
$query = new WP_Query($args);

if ($query->have_posts()) {
    while ($query->have_posts()) {
        $query->the_post();
        // 显示文章内容
    }

    // 分页链接
    echo paginate_links(array(
        'total' => $query->max_num_pages
    ));
}

wp_reset_postdata();

在上面的代码中,我们首先获取当前的页码,并将其赋值给$paged变量。然后,我们将posts_per_page参数设置为每页显示的文章数量(这里设置为10),并将paged参数设置为当前的页码。接下来,我们使用这些参数创建一个WP_Query对象,并通过循环遍历每篇文章进行显示。最后,我们使用paginate_links函数生成分页链接。

这样,我们就可以正确地使用WP_Query的posts_per_page参数来实现分页功能。

推荐的腾讯云相关产品:腾讯云服务器(https://cloud.tencent.com/product/cvm)

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

10个WordPress的query_posts语句使用技巧

php// GOOD// select 10 posts from category 1$query = 'posts_per_page=10&cat=1';$queryObject = new WP_Query...($query);// The Loop...// BETTER$query = array ( 'posts_per_page' => 10, 'cat' => 1);$queryObject...;$queryObject = new WP_Query($query);// The Loop...// the new way to do it$query = 'posts_per_page=-1...在计算出分页后,该查询返回日志列表(分页并不影响JOIN语句,因此该函数相当于posts_join) posts_orderby 应用于查询的ORDER BY语句,该语句可返回日志数组 posts_request...在计算出分页后,该查询返回日志数组(分页并不影响WHERE语句,因此该函数相当于posts_where) posts_join 应用于查询的JOIN语句,该语句可返回日志数组 该过滤器函数与post_where

73090
  • WordPress 文章查询教程10:如何使用权限和缓存参数

    第10讲关于权限和缓存的参数,这两类参数参数都用得比较少,但是一些场景下还是非常有用的: 权限参数 权限参数用于显示用户有相应权限的文章,对应的参数只有一个: perm (string) – 用户权限。...( $args ); 缓存参数 用于设置停用将获取到的文章存到缓存中,对应的参数有三个: cache_results (boolean) – 缓存文章信息. update_post_meta_cache...meta 信息. update_post_term_cache (boolean) – 缓存对应的分类或者标签信息 显示50篇文章,但是文章信息不加入缓存中: $args = array( 'posts_per_page...: $args = array( 'posts_per_page' => 50, 'update_post_meta_cache' => false ); $query...= new WP_Query( $args ); 显示50篇文章,但是 post term 信息不加入缓存中: $args = array( 'posts_per_page' =

    43030

    WordPress 6.1 将提高 WP_Query 查询性能,真正实现站点 0 SQL

    (array( 'posts_per_page' => 50, 'cache_results' => false )); 也可以通过 filter 全局禁用缓存: add_action('...update_post_term_cache update_menu_item_cache lazy_load_term_meta 因为这些忽略的参数不会影响生成的 SQL 语句,其中特别要注意下 fields 参数: $query1...= new WP_Query(array( 'posts_per_page' => 50, 'fields' => 'ids' )); $query2 = new WP_Query(...array( 'posts_per_page' => 50, 'fields' => 'all' )); 上面这两种情况,无论是否使用了 fields 参数或者什么参数,生成的 SQL...,从上可知,WP_Query 查询结果将会被缓存,这意味着现在调用 get_page_by_title 也将会被缓存,当然所有通过 WP_Query 获取数据的函数也将被缓存。

    68020

    WordPress 文章查询教程6:如何使用排序相关的参数

    第六讲关于排序相关的参数,排序相关的参数就是 order 和 orderby 两个参数,但是值比较多比较多: 首先是 order 参数,数据类型为:(string | array),用于指定 “orderby...” 参数的升序或降序,默认为”DESC”,即为降序,如果是数组的话,可用于多个 order/orderby 集: ASC – 升序,从最低值到最高值 (1, 2, 3; a, b, c) DESC –...常用于页面(排序字段在页面编辑页面的「页面属性」框中),也可用于具有不同 menu_order 值的任何文章类型(默认值都是 0)。...、34、4、56、6 ,而不是 1、3、4、6、 34, 56)。...( $args ); 随机显示一遍文章: $args = array( 'orderby' => 'rand', 'posts_per_page' => '1', );

    1.5K30

    【Wordpress】ajax 实现站内搜索

    问题1 – 模糊搜索: 大胆尝试: wordpress 原生自带有一个 wp_query 函数,它支持的参数非常完善灵活,实现整个网站与数据库的交互。...在官方手册中也有介绍到:wp_query,支持多种 sql 语句的 比较符号: ? 看!他说可以支持 like 或者 regexp 这种比较符号。...于是我们试一试: Shell $args = [ 'posts_per_page' => -1, // 每页数量 -1 不限制数量 'ignore_sticky_posts...($args); 123456789101112131415 $args   = [    'posts_per_page'      => -1,  // 每页数量 -1 不限制数量    'ignore_sticky_posts...response = (json_encode([], JSON_UNESCAPED_UNICODE));        wp_die();    }    $args     = [        'posts_per_page

    1.3K10
    领券