Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.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
Wordpress 如果存在';什么是补偿?_Wordpress_Wordpress Theming_Custom Wordpress Pages - Fatal编程技术网

Wordpress 如果存在';什么是补偿?

Wordpress 如果存在';什么是补偿?,wordpress,wordpress-theming,custom-wordpress-pages,Wordpress,Wordpress Theming,Custom Wordpress Pages,编辑:这是我正在尝试分页的当前代码。它创建了一个自定义查询,用于排除最新的帖子以及一个类别中的所有帖子。分页在大多数情况下都很好,但问题是分页列表中的最后一个链接将我带到一个空白页 <section class="card-grid card-grid--push"> <main class="container container--wide"> <?php $current_page = get_query_var('page

编辑:这是我正在尝试分页的当前代码。它创建了一个自定义查询,用于排除最新的帖子以及一个类别中的所有帖子。分页在大多数情况下都很好,但问题是分页列表中的最后一个链接将我带到一个空白页

<section class="card-grid card-grid--push">
    <main class="container container--wide">

    <?php

        $current_page = get_query_var('paged');
        $current_page = max( 1, $current_page );
        $per_page = 3;
        $offset = ( $current_page - 1 ) * $per_page + 1;

        $post_list = new WP_Query(array(
            'cat'            => -15,
            'posts_per_page' => $per_page,
            'paged'          => $current_page,
            'offset'         => $offset, 
            'orderby'        => 'date', 
            'order'          => 'DESC',  
        ));

        if ( $post_list->have_posts() ):
            while ( $post_list->have_posts() ):
                $post_list->the_post();

    ?>

    <a href="<?php the_permalink(); ?>" <?php post_class('card'); ?>>
        <article class="card__content">
            <?php the_post_thumbnail('th-card'); ?>
            <div class="card__head">
                <span class="category">
                    <?php $category = get_the_category(); echo $category[0]->cat_name; ?>
                </span>
                <h2 class="card__title"><?php the_title(); ?></h2>
            </div>
        </article>
    </a>

    <?php endwhile; ?>

    <div class="pagination">

        <?php 
            echo paginate_links( array(
                'total'   => $post_list->max_num_pages,
                'current' => $current_page,
                'type'          => 'list',
                'prev_text' => '«',
                'next_text' => '»'
            ) );
        ?>

    </div>

  <?php  
        endif;
        wp_reset_postdata();
    ?>

</main>


[EDIT]在这里,经过全面测试并正常工作

$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;

$post_list = new WP_Query(array(
    'cat'            => -15,
    'posts_per_page' => $per_page,
    'paged'          => $current_page,
    'offset'         => $offset, // Starts with the second most recent post.
    'orderby'        => 'date',  // Makes sure the posts are sorted by date.
    'order'          => 'DESC',  // And that the most recent ones come first.
));

// Manually count the number of pages, because we used a custom OFFSET (i.e.
// other than 0), so we can't simply use $post_list->max_num_pages or even
// $post_list->found_posts without extra work/calculation.
$total_rows = max( 0, $post_list->found_posts - $offset_start );
$total_pages = ceil( $total_rows / $per_page );

if ( $post_list->have_posts() ):
    while ( $post_list->have_posts() ):
        $post_list->the_post();


        // loop output here
    endwhile;

    echo paginate_links( array(
        'total'   => $total_pages,
        'current' => $current_page,
    ) );
endif;
wp_reset_postdata();

PS:代码使用制表符重新缩进。

非常感谢!我试过了,但效果不错……唯一的问题是分页的最后一页是空白的。你知道为什么吗?你是使用了我提供的代码,还是添加/编辑/删除了其中的任何部分?您是否仍在使用
offset
arg?对不起,请忽略我以前的评论(我已删除了…)。我想我知道什么需要改变我很快就会更新代码。我已经更新了代码。试试看。希望它能起作用!哦,我的天啊,非常感谢你!它正在工作。你是最棒的!我真的很感谢你花这么多时间来帮助我,并帮助我度过难关。:-)谢谢,谢谢,谢谢!!