1

ページネーションを表示するために使用しているコードは次のとおりです...

<?php

global $wp_query;



$big = 999999999; // need an unlikely integer



echo paginate_links( array(

'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),

'format' => '?paged=%#%',

'current' => max( 1, get_query_var('paged') ),

'total' => $wp_query->max_num_pages

) );

?>

しかし、[次へ] をクリックして /page/2/ に移動すると、「ページが見つかりません」と表示されます

私は何を間違っていますか???

4

1 に答える 1

0

カスタム投稿タイプに設定されていないため、上記のコードは機能しません。paginate_links
の wordpress codex を見ると、コードは

基本的な例
検索結果とアーカイブにページネーションを追加するには、次の例を使用できます。

query_vars が異なるため、クエリに対して機能していません。使用する必要があるコードは、同じ codex ページからのものである必要があります。

カスタム クエリを使用した例
new WP_Query を使用してループをクエリする場合、'total' パラメータを WP_Query オブジェクトの max_num_pages プロパティに設定します。
クエリは次のとおりです。

<?php
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$args = array(
'posts_per_page' => 5,
'category_name' => 'gallery',
'paged' => $paged,
);
$the_query = new WP_Query( $args );
?>
<!-- the loop etc.. -->

そしてページネーションコード:

<?php
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $the_query->max_num_pages
) );
?>

ページネーションを使用する場合、「ページが見つかりません」というエラーは、通常、クエリ変数のミスが原因で発生します。

于 2013-10-11T20:56:45.860 に答える