• Webサイト制作

カスタムフィールドの真/偽を使って特定の記事を表示/非表示にする方法

WordPressのカスタマイズを日々勉強中の阿部です!

今回は特定の記事のみをトップページなどに表示する方法、または非表示にする方法の備忘録です。

僕のホームページのトップページの制作実績の部分で実装をしており、スライダーの5件を任意の選択した記事を表示し、その下の5つ並んでいる部分は選択をしていない記事の最新5件が表示されるようにしております。

 

まずは表示したい記事のみを表示する方法から。

①真偽フィールドを作成し、表示したい記事にチェックを入れる。

②該当するPHPファイルに下記記述を追加する。

<?php
$args = array(
'post_type' => 'カスタム投稿タイプ',
'posts_per_page' => 表示件数,
'meta_query' => array(
array(
'key' => 'カスタムフィールド名',
'value' => true,
'compare' => '='
)));
$the_query = new WP_Query($args);
if ($the_query->have_posts()) :
while ($the_query->have_posts()) : $the_query->the_post(); ?>

<?php endwhile; ?>
<?php endif;
wp_reset_postdata();?>

③ファイルを更新しページを確認する。

 

これで表示したい記事のみが表示されるはずです。

ここからは選択した記事以外を表示したい場合の方法になりまが下記の部分を変更するだけです。

‘value’ => true,

true部分をfalseではなく’0’に変更するすることでチェックを入れていな記事のみが表示されます。

ただ、過去に投稿している記事は再度チェックを入れない状態で更新をしてあげる必要がありますのでご注意ください。

 

カスタムフィールドの真/偽を使って特定の記事を表示/非表示にする方法は以上になります!

最後までご覧いただきありがとうございました。

 

Page Top