• 解決済 unajuu

    (@unajuu)


    1ページに表示する最大投稿数を「10件」に設定し、下記の要領で記事を取得しています。

    $args = array( //取得条件設定 );
    $the_query = new WP_Query( $args );

    if ( $the_query->have_posts() ) :
    while ( $the_query->have_posts() ) : $the_query->the_post();
    //出力
    endwhile;
    else:
    //記事が無い場合の処理
    echo “これ以上記事がありません。”;
    endif;

    取得条件に合う記事の総数が「10件」以下の場合でも、「記事が無い場合の処理」を行うのに、上記の行程を2度繰り返す必要があります。

    ループの最後に次の記事の有無を確認できれば、2度も繰り返す必要はないと思うのですが、実装の仕方が分かりません。

    要はタイトルの通り、ループの最後に次に読み込める記事があるかどうかを判別したいという事です。
    ご教示いただけますと幸いです、よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • こんにちは

    max_num_pages プロパティにページの合計数が格納されているので、現在のページ番号と比較することで判定するのはどうでしょうか。

    例:
    if ( $the_query->query_vars['paged'] < $the_query->max_num_pages ) {

    トピック投稿者 unajuu

    (@unajuu)

    $the_query->query_vars[‘paged’]は、なぜか値が0にしかなりませんでしたが(非同期通信での記事取得のせいかもしれません)、現在のページ数を別途算出して、$the_query->max_num_pagesと比較することで実装出来ました。

    勉強になりました。ありがとうございました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「ループの最後に次に読み込める記事があるかの判別」には新たに返信することはできません。