WordPressでカスタムフィールドを追加できるプラグイン「Smart Custom Field」で、設定したカスタムフィールドに値がない場合の条件分岐について紹介します。
値が空の場合は違う処理をしたり、何も表示させなかったりするときに使えます。
一番簡単なのは次のようなコードです。
<?php if(get_post_meta($post->ID, ‘カスタムフィールド名’, true)): ?>
//値がある場合に表示する内容
<?php endif; ?>
//値がある場合に表示する内容
<?php endif; ?>
また、次のように条件分岐を書くこともできます。
<?php $customfield = get_post_meta($post->ID, ‘カスタムフィールド名’, true)?>
<?php if(!empty($customfield)): ?>
//値がある場合
<?php else: ?>
//値がない場合
<?php endif; ?>
<?php if(!empty($customfield)): ?>
//値がある場合
<?php else: ?>
//値がない場合
<?php endif; ?>
emptyの前に「!」をつけているので、「空でない場合」という意味の条件分岐になることに注意してください。
以下は、値の取得方法が違うだけで、条件分岐は同じような書き方です。
<?php $customfield = SCF::get(‘カスタムフィールド名’); ?>
<?php if(!empty($customfield)): ?>
//値がある場合
<?php else: ?>
//値がない場合
<?php endif; ?>
<?php if(!empty($customfield)): ?>
//値がある場合
<?php else: ?>
//値がない場合
<?php endif; ?>
値がある場合には以下のようにして、カスタムフィールドの値を出力すればOKです。
<?php echo post_custom(‘カスタムフィールド名’); ?>
Leave a Comment