サポート » 使い方全般 » foreach構文内で分岐は可能なのでしょうか?

  • 解決済 mitsugi ikeda

    (@mitsugi-ikeda)


    いつもお世話になっております。

    現在、以下のコードにて、必要なカテゴリ(ID)毎の記事リストを表示しています。

    問題なく表示できているのですが、出来れば最初に読み込んだ(1つ目の)記事名のみ、
    リスト内で表示しないようにしたいのですが、
    foreach構文内で、そのような分岐は不可能なのでしょうか。

    別の構文にする必要があるのでしょうか?

    どなたか、お詳しい方がいらっしゃいましたら、
    お知恵をお借りしたいのですが。

    宜しくお願いいたします。

    尚、現在のコードは、以下です。

    <?php
    $category_recent_post = 100;      // 記事数
    $category_recent_id = 382;     // カテゴリID
    $category_recent_order = asc;     // ASC=降順 desc=昇順
    $category_recent_orderby = title;     // タイトル順指定
    $posts = get_posts('numberposts='  . $category_recent_post .
     '&category=' . $category_recent_id .
     '&order='.$category_recent_order  .
     '&orderby='.$category_recent_orderby  );
    global $post;
    if($posts) {
                 foreach($posts as $post) {
    setup_postdata($post);
    echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
                                          }
              }
    ?>
3件の返信を表示中 - 1 - 3件目 (全3件中)
  • こんにちは

    if($posts) {
                 foreach($posts as $key=>$post) {
    			 echo $key;
             if($key !== 0){echo '最初じゃないよ';}
    setup_postdata($post);
    echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
                                          }
              }

    という風に使えますが、役に立ちそうですか?

    モデレーター jim912

    (@jim912)

    表示しないのであれば、offsetパラメーターで最初から除いてしまうほうが良いかと思います。

    トピック投稿者 mitsugi ikeda

    (@mitsugi-ikeda)

    nobita様、jim912様、有難うございました。

    jim912様にお教えいただいた、offsetパラメーターで、

    ‘&offset=1’の追加で解決できました。

    jim912様、有難うございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「foreach構文内で分岐は可能なのでしょうか?」には新たに返信することはできません。