6

これがうまくいくまで、ブログページにページネーターを作成する必要がありますが、ページネーションのリンクをクリックすると、ページが見つからないため、パネルでワードプレスでアクセスできるようにする必要があるかどうかを知る必要がありますto ?page=N

関数:

    function get_pagination($the_query) {
    global $paged;
    $total_pages = $the_query->max_num_pages;
    $big = 999999999;

    if ($total_pages > 1) {
        ob_start();

        echo paginate_links( array(
            'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
            'format' => '/page/%#%',
            'current' => $paged,
            'total' => $total_pages,
            'prev_text' => '',
            'next_text' => ''
        ));
        return ob_get_clean();
    }
    return null;
}

私のブログコード

$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
        // echo $paged;
        $produtos = new WP_Query(array(
            'post_type'      => 'blog',
            'posts_per_page' => 1,
            'orderby'        => 'date',
            'order'          => 'asc',
            'paged'          => $paged,
            'tax_query'      => array(
                array(
                    'taxonomy' => 'categorias',
                    'field'    => 'slug',
                    'terms'    => ACTIVE
                )
            )
        ));

        while ( $produtos->have_posts() ) : $produtos->the_post();

        //CONTENT

        endwhile;

        echo get_pagination($produtos);
4

5 に答える 5

17

これは私が見つけて、私が抱えていた問題を解決したものです!

[...] wp-admin ページ (wordpress ダッシュボード) に移動し、[設定]、[閲覧] の順に移動し、[ブログ ページは最大で表示] フィールドで値を「10」から「6」に変更する必要がありました (で示した投稿の数 $wp_query->query('showposts=6&cat=1'.'&paged='.$paged);)

于 2013-11-21T16:45:47.767 に答える
1

次のページクエリを使用

if ( get_query_var('paged') ) { $paged = get_query_var('paged'); }
elseif ( get_query_var('page') ) { $paged = get_query_var('page'); }
else { $paged = 1; }

    $produtos = new WP_Query(array(
            'post_type'      => 'blog',
            'posts_per_page' => -1,
            'orderby'        => 'date',
            'order'          => 'asc',
            'paged'          => $paged,
            'tax_query'      => array(
                array(
                    'taxonomy' => 'categorias',
                    'field'    => 'slug',
                    'terms'    => ACTIVE
                )
            )
        ));

        while ( $produtos->have_posts() ) : $produtos->the_post();

        //CONTENT

        endwhile;

        echo get_pagination($produtos);
于 2013-09-11T14:57:48.850 に答える
-5

wordpress ダッシュボードの設定に移動してから、[閲覧] に移動し、[ブログ ページを最大で表示] フィールドで、値を「10」から「1」に変更しました。

于 2014-09-08T15:52:51.267 に答える