SHU BLOG

BLOG NEWS

TITLE

【WordPress】ACFの条件分岐で入力がある場合のみ表示する方法

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!

サーバーとドメインの同時取得で.jpが無料

シュウ
シュウ
今回は【WordPress】ACFの条件分岐で入力がある場合のみ表示する方法についての解説になります!

こんな方に読んでほしい

  • 期間限定キャンペーンページを作るWeb担当者へ
  • 入力が空のときにレイアウト崩れで困っている方へ
  • WordPressで柔軟な表示制御をしたい方へ


ACFの条件分岐について

ACF(Advanced Custom Fields)を使うと、投稿や固定ページに自由に項目を追加できます。
しかし、入力がない場合にも表示されてしまうと、見た目やユーザー体験に影響が出てしまいます。
そこで活用したいのが「条件分岐」です。

入力されていない項目をそのまま表示すると、空白や不自然なレイアウトが発生します。
条件分岐を使うことで、必要な情報だけをきれいに表示することができます。

コードの仕組みについて

コードの仕組みについて

入力がある場合のみ表示する基本的なコードを見ていきましょう。
コードはシンプルです。

<?php if(get_field('cat')): ?>
<div class="data-cat"><?php the_field('cat'); ?></div>
<div class="data-day"><?php the_field('day'); ?></div>
<?php endif; ?>
cat入力ありday入力あり表示両方表示
cat入力ありday入力なし表示dayは空で表示
cat入力なしday入力あり表示両方非表示
cat入力なしday入力なし表示非表示

今回は、catの入力がある場合、ない場合の表示、非表示のコードになります。

1.値を取得する
get_field('cat')で、値を取得します。
2.条件分岐の判断をする
if(その値があるか?)YESなら表示、NOなら非表示にします。

2つのフィールドの場合の条件分岐について

先ほど、コードに少し足すことで、2つのフィールドに入力がない場合に、表示、非表示にする方法になります。
全体のコードは以下になります。

<?php if(get_field('cat') && get_field('day')): ?>
<div class="data-cat"><?php the_field('cat'); ?></div>
<div class="data-day"><?php the_field('day'); ?></div>
<?php endif; ?>
cat入力ありday入力あり表示両方表示
cat入力ありday入力なし表示非表示
cat入力なしday入力あり表示非表示
cat入力なしday入力なし表示非表示

今回は、catdayの入力がある場合に表示します。それ以外は、非表示のコードになります。

よくある使いどころ
  • 見出し+日付がセットのとき
  • タイトル+内容が両方必要なとき
  • 不完全な情報を出したくない場合

片方だけ入力されている場合に対応する方法

場合によっては、どちらか一方が入力されていれば表示したいケースもあります。
その場合は条件を変更します。

<?php if(get_field('cat') || get_field('day')): ?>
<div class="data-cat"><?php the_field('cat'); ?></div>
<div class="data-day"><?php the_field('day'); ?></div>
<?php endif; ?>

|| を使うことで「どちらかが入力されていれば表示」になります。

オススメの記事

WordPressのカスタムフィールドについて

まとめ

今回はこれで以上です。
ACFの条件分岐を使うことで、入力状況に応じた柔軟な表示制御が可能になります。
特に「空の場合は表示しない」という処理は、見た目の品質を保つ上で非常に重要です。

今回紹介したコードをベースに、用途に応じて「AND(&&)」と「OR(||)」を使い分けてみてください。
少しの工夫で、より使いやすく、きれいなサイトを実現できます。

POINT
  • WordPressACFの入力による、条件分岐について解説しました。
  • get_field() は値の有無で表示・非表示を切り替えられます。
  • &&(AND)は両方入力されている場合のみ表示します。
  • ||(OR)はどちらか一方でも入力があれば表示します。
  • 表示の基準(トリガー)を決めることで設計がシンプルになります。
  • 空のフィールドを出力しないことでレイアウト崩れを防げます。
  • こちらの記事も参考に!「Advanced Custom Fieldsの始め方と使い方を解説
スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

オススメ記事

月別アーカイブ

Others Posts記事

NEW
ホームページ制作ご相談ください