カスタムフィールドの値が一致するかどうかで条件分岐する方法
MENU
  1. HOME
  2. WordPress / カスタマイズ
  3. カスタムフィールドの値が一致するかどうかで条件分岐する方法

最近の作業実績

  • 2020年11月09日子テーマの導入で発生した不具合を修正いたしました。
  • 2020年11月09日LPサイトのレイアウトの崩れを修正いたしました。
  • 2020年11月04日カスタム投稿のアーカイブページで発生していた不具合を修正いたしました。
  • 2020年11月04日WordPressサイトのSEO対策に関するアドバイスをご提供いたしました
  • 2020年11月04日WordPressで構築されたサイトのトップページのデザイン一新しました
  • 2020年11月04日ループ部分のデザインを変更いたしました。
  • 2020年10月28日カスタム投稿専用のカレンダーウィジェットを実装いたしました。
  • 2020年10月28日内部SEO対策を最適化いたしました。
  • 2020年10月28日WordPressサイトのサーバー移管を行いました。
  • 2020年10月28日新規サイト(WordPress)を制作いたしました
  • 2020年10月10日既存サイトをWordPressで再構築いたしました。
  • 2020年10月04日WordPress各ユーザーのユーザー名を変更いたしました。
  • 2020年10月04日PHPのバージョンアップに伴うデータベース確立エラーを解消いたしました。
  • 2020年10月04日WordPressサイトのサーバー移管を担当いたしました。
  • 2020年10月04日複雑怪奇なテーマ構造の一部を分かりやすく再構築いたしました。
  • 2020年10月04日既存サイトにWordPressを導入いたしました。
  • 2020年09月29日WordPress、プラグイン、テーマ、PHPのバージョンアップを行いました。
  • 2020年09月29日WordPressのセキュリティ対策を導入いたしました。
  • 2020年09月22日WordPressのパスワードをデータベースから直接変更いたしました。
  • 2020年09月21日WordPressテーマにオリジナルのPHPファイルを実装いたしました。
  • このエリアには直近の制作実績を一部掲載しております。
  • 制作実績はリアルタイム反映ではありません。

カスタムフィールドの値が一致するかどうかで条件分岐する方法

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

カスタムフィールドの値が一致するかどうかで条件分岐する方法をご紹介します。カスタムフィールドを利用しているサイトであれば、意外と利用する機会は多いです。覚えていて損はありません。この機会に3分間でマスターしてしまいましょう。

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

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

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

カスタムフィールドの値が指定した値と一致した場合に条件分岐したい

少し前に関わらせていただいたサイト制作の案件でのお話です。

カスタムフィールドの値が、例えば【A】と一致したの場合のみ、専用のコンテンツを表示させたい!
そんなご希望をいただきました。

この様なご希望の場合は、条件分岐を使います。

カスタムフィールドの値が【A】と一致した場合のみ○○○○○を表示する。
そんな条件分岐です。

この条件分岐ですが、そんなに難しくありません。
3分程度で実装できます。

同じようなことがしたい方がいれば、参考にしてください。

カスタムフィールドの値が指定した値と一致した場合の条件分岐はコレ!

それでは、カスタムフィールドの値が【A】と一致した場合のみ○○○○○を表示する、そんな条件分岐の書き方をご紹介します。

この条件分岐に必要なモノは、以下の2つだけ。

・カスタムフィールドのフィールド名
・条件となる文字列(前述の説明であれば【A】)

それでは、具体的な書き方を2つご紹介します。

値が一致した場合にコンテンツを表示する場合

まずは、カスタムフィールドの値が指定した値と一致した場合にコンテンツを表示させる方法です。
コンテンツを表示させたい箇所に以下のコードをコピペしてください。

<?php if(get_post_meta($post->ID,'フィールド名',true) == '文字列'): ?>
値が一致した場合に表示する内容
<?php endif; ?>

赤文字の部分は、個別に書き換えを行わなければなりません。

【フィールド名】=カスタムフィールドの名前(例:text)
【文字列】=任意の文字列
【値が一致した場合に表示する内容】=ここに表示したいコンテンツを記述

どういう動作をするのか簡単に説明しますと、

・カスタムフィールドの値を取得
・上記の値と【文字列】が一致するかどうかを判断
・一致すれば【値が一致した場合に表示する内容】部分に記述したコンテンツを表示

上記の様な動作をします。

カスタムフィールドの値と【文字列】が一致しなかった場合は、何も表示されません。

値が一致した場合と一致しなかった場合で表示内容を分ける場合

先ほどは、カスタムフィールドの値と【文字列】が一致した場合のみコンテンツを表示するコードをご紹介しました。

ここでは、一致しなかった場合も専用のコンテンツを表示させる方法をご紹介します。
コンテンツを表示させたい箇所に以下のコードをコピペしてください。

<?php if(get_post_meta($post->ID,'フィールド名',true) == 'フィールドの値'): ?>
値が一致した場合に表示する内容
<?php else: ?>
値が一致しなかった場合に表示する内容
<?php endif; ?>

基本的に先ほどのコードと同じです。
各項目の解説は、前述していますのでそちらをご確認ください。

【値が一致しなかった場合に表示する内容】の部分には、カスタムフィールドの値と【文字列】が一致しなかった場合に表示させる内容を記述してください。

今回のコードがどういう動作をするのか簡単に説明しますと、

・カスタムフィールドの値を取得
・上記の値と【文字列】が一致するかどうかを判断
・一致すれば【値が一致した場合に表示する内容】部分に記述したコンテンツを表示
・一致しなければ【値が一致しなかった場合に表示する内容】の部分に記述したコンテンツを表示

上記の様な動作をします。

まとめ

カスタムフィールドの値が一致するかどうかで条件分岐する方法をご紹介しました。

カスタムフィールドを利用しているのであれば、利用する機会は多いのではないでしょうか?
個人的には使う機会が多いので、今回ご紹介をさせていただきました。

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

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

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

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

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する


著者:takaya kondo

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

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

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

コメントを残す

(必須)

CAPTCHA