サポート » 使い方全般 » is_paged() で異なるループを出力したい

  • 解決済 Tomimoto

    (@tomimoto)


    TOPページと2ページ目以降で異なるループを出力したいと考えています。
    具体的には以下のように、ループ内のHTMLのclass名のみ差し替えます。

    ▼1ページ目(以下3行をループさせる)
    <div class=”loop1″>
    <p>テキスト</p>
    </div>

    ▼2ページ目(以下3行をループさせる)
    <div class=”loop2″>
    <p>テキスト</p>
    </div>

    is_paged() をループに組み込む方法が分からず足踏みしております。
    ご教授いただけると幸いです。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • ループが始まる前に class文字列を定義すれば良いのではないでしょうか。

    Tomimoto

    (@tomimoto)

    以下のように考えており、ループで前述の3行を繰り返したいのですが、その方法で可能でしょうか。
    勉強不足で申し訳ありませんが、方法をご教授いただけると幸いです。

    <?php if(is_home() && !is_paged()); ?>
    ループ1
    <?php else; ?>
    ループ2
    <?php endif; ?>

    以下、未検証ですが、

    <?php
    if ( is_paged() ) {
        $class = 'loop2';
    } else {
        $class = 'loop1';
    }
    while ( have_posts() ) : the_post(); ?>
    <div class="<?php echo $class; ?>">
    /* 略 */
    </div>
    <?php
    endwhile;

    こんなイメージでした。

    Tomimoto

    (@tomimoto)

    細部はカスタマイズしましたが、アドバイスいただいた方法で実装できました。
    ありがとうございます!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「is_paged() で異なるループを出力したい」には新たに返信することはできません。