首页 > 解决方案 > 计算分页的偏移量(php)

问题描述

我正在尝试将分页添加到我的网站,但每个页面都有相同的帖子。我尝试使用该代码设置自动偏移量,但它不起作用。即使在第 2 页和第 3 页上,它也只会插入前 3 个帖子

function pag_in( $query ) {
$page = get_query_var( 'page' ) ? absint( get_query_var( 'page' ) ) : 1;


$offset = ($page - 1) * 3;
  
    $query->set( 'posts_per_page', 3 );
   $query->set( 'offset', $offset);
    $query->set( 'order', 'ASC');
        }  add_action( 'pre_get_posts', 'pag_in', 1 );

标签: phpwordpresspaginationoffsetposts

解决方案


也许get_query_var( 'page' )正在返回 null。

$current_page = get_query_var('paged');
$current_page = max( 1, $current_page );

$per_page = 12;
$offset_start = 1;
$offset = ( $current_page - 1 ) * $per_page + $offset_start;

推荐阅读