カスタムフィールドの値が空だった場合の条件分岐
MENU
  1. HOME
  2. WordPress / カスタマイズ
  3. カスタムフィールドの値が空だった場合の条件分岐

最近の作業実績

  • 2022年05月13日既存テーマに投稿データをCSV形式で出力できる仕組みを組み込みました。
  • 2022年05月11日監理画面から各投稿のはてブ数が確認できる仕組みを組み込みました。
  • 2022年05月09日サイト上のカラーを管理画面から一括管理できるようにいたしました。
  • 2022年05月07日テーマファイル内で共通して使っていたコードを一元管理できる形に調整いたしました。
  • 2022年05月05日WordPressに不具合が起こらないよう、PHPのバージョンアップを行いました。
  • 2022年05月03日開閉式メニューの不具合を修正しました。
  • 2022年05月01日既存サイトの表示速度を改善いたしました。
  • 2022年04月29日WordPressに不具合が起こらないよう、PHPのバージョンアップを行いました。
  • 2022年04月27日既存サイトのトップページに更新順の投稿一覧を作成いたしました。
  • 2022年04月25日既存サイトのループ部分を新しいデザインで再構築いたしました。
  • 2022年04月23日絞り込み検索の不具合を修正いたしました。
  • 2022年04月21日既存サイトの画像サイズを最適化いたしました。
  • 2022年04月19日WordPressに不具合が起こらないよう、PHPのバージョンアップを行いました。
  • 2022年04月17日既存サイトのドメイン変更を担当いたしました。
  • 2022年04月13日既存サイトの引っ越しを担当いたしました。
  • 2022年04月11日既存サイトの引っ越しを担当いたしました。
  • 2022年04月09日WordPressに不具合が起こらないよう、PHPのバージョンアップを行いました。
  • 2022年04月07日肥大化したデータベースの軽量化を担当いたしました。
  • 2022年04月05日姉妹サイトの更新情報をRSSで取得して一覧表示できるようにいたしました。
  • 2022年04月03日テーマに直書きされていたGOOGLE系コードを管理画面から登録できるようにカスタマイズを行いました。
  • このエリアには直近の制作実績を一部掲載しております。
  • 制作実績はリアルタイム反映ではありません。

カスタムフィールドの値が空だった場合の条件分岐

この投稿は2020/05/19に加筆修正いたしました。

2020年5月19日にコードを修正いたしました。

カスタムフィールドで値が入力されていない項目を非表示にする条件分岐をご紹介。カスタムフィールドに値を記入しなくても良い場合など、空白になるそのエリア自体を非表示にしたい時ってありますよね。今回はそんな方法をご紹介しています。

この記事は約 2 分で読めます。

WordPressのカスタマイズはお任せください。

WordPressのカスタマイズを格安で代行しております。ご希望のカスタマイズがあればお気軽にご相談ください。

条件分岐を使って項目自体を非表示にする

カスタムフィールドでコンテンツを構成している場合、カスタムフィールドに項目が入力されていない場合でも、その項目自体はサイト上に表示されてしまいます。

<div id="test">
<h2>項目A</h2>
<?php echo post_custom('sample'); ?>
</div>

この場合ですと、カスタムフィールドに値が入力されていないときでも、以下の部分がそのままサイト上に表示されてしまいます。

<div id="test">
<h2>項目A</h2>
</div>

今回は、カスタムフィールドの値が空だった場合、上記の部分も非表示するカスタマイズ方法をご紹介します。

カスタムフィールドの値が空なら非表示、値があれば表示と条件分岐してやれば良いのです。
以下のコードで条件分岐できます。

<?php $value = get_post_meta($post->ID, 'sample', true);?>
<?php if(empty($value)):?>
カスタムフィールド【sample】の値が空の時、ここに記載した内容が表示されます。
<?php else:?>
カスタムフィールド【sample】に値が入っている時、ここに記載した内容が表示されます。
<?php endif;?>

先ほどの例ですと、以下のように記述してやればOkです。

<?php $value = get_post_meta($post->ID, 'sample', true);?>
<?php if(empty($value)):?>
<?php else:?>
<div id="test">
<h2>項目A</h2>
</div>
<?php endif;?>

この様に記述すると【sample】の値が取得できない場合、項目自体を非表示にできます。

sample】の部分には、カスタムフィールド名を記入してください。

まとめ

カスタムフィールドの値が入力されていない項目を非表示にする方法をご紹介しました。

とある案件で必要になったので調べたものをまとめてみました。
今回のコードの様に単純に使えるケースは少ないかと思います。

機会があれば、参考にしてください。

よく使う条件分岐を42種類を以下の記事にまとめてみたのでご確認ください。
【保存版】WordPressの条件分岐を42個まとめてみました!

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のフォームからお気軽にご相談下さい。

WordPressのカスタマイズを相談する

著者:takaya kondo

岡山在住のWordPress専門フリーランサーです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

コメントを残す

(必須)

CAPTCHA