web関連

【wordpress】「最新の記事」1件のみ出そうとしたら2件出た時の備忘録

【wordpress】「最新の記事」1件のみ出そうとしたら2件出た時の備忘録

Wordpressで「最新の記事」1件を「WP_Query」使って出力しようとしたら、なぜか2件出ていた時の備忘録

「この投稿を先頭に固定表示」が原因だった

「最新の記事」1件と「この投稿を先頭に固定表示の記事」1件が出力されていた
なので以下の引数を追加

// 「この投稿を先頭に固定表示」を出力させない
'ignore_sticky_posts' => true,

↓こんな感じで入れる

<?php
$args = array(
'posts_per_page' => 1,
'post_type' => 'post',
'ignore_sticky_posts' => true,
);
$the_query = new WP_Query($args);
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
?>

// ↓is_sticky()で先頭固定の記事かどうか判別できる
<?php if(is_sticky()) : //先頭固定表示の場合 ?>
<?php else : //先頭固定表示以外の場合 ?>
<?php endif; //先頭固定表示終わり ?>

<?php endwhile; ?>
<?php else: ?>
<?php endif; ?>

「この投稿を先頭に固定表示の記事」が出なくなった

「is_sticky()」で「この投稿を先頭に固定表示」がついた投稿かどうか分岐できるのでメモ書き
「この投稿を先頭に固定表示」をチェックつけてると、1件しか表示しないように書いていても割り込んでくるんすね 知らなかったから驚いた