在WordPress中设置偏移时,分页不起作用

时间:2017-01-22 02:25:37

标签: php wordpress pagination wordpress-theming

任何人都可以解释为什么我的分页不起作用吗? 请看下面的代码

public static void fillTotals(int[][] scores) {
    for (int c=0; c < scores[0].length; ++c) {
        int sum = 0;
        for (int r=0; r < scores.length - 1; ++r) {
            sum += scores[r][c];
        }
        scores[scores.length - 1][c] = sum;
    }
}

当我评论或删除<?php $args = array( 'post_type' => 'post', 'offset' => '1', 'page' => $page, 'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1), ); query_posts($args); $i = 1; if (have_posts()) : while (have_posts()) : the_post(); ?> 分页作品时 是否有其他替代方式进行抵消?

任何帮助将不胜感激 感谢。

2 个答案:

答案 0 :(得分:0)

This文章解释了如何在不破坏WordPress内置分页的情况下在查询中使用WordPress pre_get_posts值。

您需要编写一些额外的代码来手动处理分页;您需要检测循环是否有其他页面,然后动态计算当前页面的适当偏移量。

您将使用WordPress中内置的public class KComplexityOfArray { public static StringBuffer oldFunction(int arr[], int k) { int result = 0; StringBuffer sb = new StringBuffer(); for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr.length; j++) { if (i != j && arr[i] + arr[j] == k) { sb.append(arr[i] + "," + arr[j]); result++; } } } System.out.println(result); return sb; } public static void main(String[] args) { int[] intArray1 = new int[]{4, 5, 6, 3, 1, 8, -7, -6, 7}; int[] intArray2 = new int[]{1, 2, 7, 5, 6, 3}; int[] intArray = new int[]{4, 5, 6, 3, 1, 8, -7, -6}; int k = 9; System.out.println("No of k complementary pairs : " + oldFunction(intArray2, k)); } 挂钩。请参阅Codex

答案 1 :(得分:0)

<?php
    $current_page = get_query_var('paged');
    $current_page = max( 1, $current_page );
    $per_page = 2;
    $offset_start = 1;
    $offset = ( $current_page - 1 ) * $per_page + $offset_start;

    $args = array(  
        'post_type' => 'podcast',
        'post_status' => 'publish',
        'posts_per_page' => $per_page,
        'offset' => $offset,
        'paged' => $current_page,
    );
    $query = new WP_Query( $args );
    $total_rows = max( 0, $query->found_posts - $offset_start );
    $total_pages = ceil( $total_rows / $per_page );
?>

<?php if($query->have_posts()): ?>
    <?php while ( $query->have_posts() ) : $query->the_post(); ?>

    <?php endwhile; ?>
    <?php
        echo paginate_links(array(
            'total'   => $total_pages,
            'current' => $current_page,
            'next_text'=> "Next",
            'prev_text'=> "Prev",
        ));
    ?>
<?php endif; wp_reset_query(); ?>

这对我有用。