サイトアイコン WEB帳

固定ページや投稿ページで複数のループ処理をする場合の注意点

固定ページで投稿記事の一覧をget_posts()関数で呼び出した後に、滞在固定ページの情報をhave_posts()関数で出力しようとしたら投稿記事の情報が表示されてしまう現象に見舞われました。

get_posts

<ul>
<?php       
$posts = get_posts('絞り込み条件');
if($posts){
    foreach($posts as $post){
        setup_postdata($post);
        echo '<li>';
        the_title('<a href="'.esc_url(get_permalink()).'">', '</a>');
        echo '</li>';
    }
}else{ echo '<li>'.date('Y年m月d日').'<br />現在、記事の投稿はありません。</li>'; }
wp_reset_postdata();
$posts = false;
?>
</ul>

12行目でリセットしてるはずなのにと思いつつも、13行目を追加したら問題解決しました。

モバイルバージョンを終了