ちょっとした小ネタです。
投稿名を商品名として表示するページを作ったのですが、数点だけ異なるルールの商品があることが後から判明し、回避策として対応したときのコードです。
対応方法
「商品名のエイリアス」をカスタムフィールドで作ってif文で出し分ける方法で逃げました。
サンプルコード
※カスタムフィールドの設定等の説明は省略します。
<?php if(have_posts()): while(have_posts()): the_post(); ?>
<div class="item-name">
<?php //商品の別名があれば取得して表示する
$item_alias = get_field('item-alias'); //商品の別名を取得
if($item_alias){
echo $item_alias; //商品の別名がある場合はそれを出力する
}else{
the_title();
}
?>
</div>
<?php endwhile; endif; ?>
get_field()で値を取得し、if文の条件として使います。
「商品名のエイリアス」がある場合のみそれを出力し、無ければ通常の投稿タイトルを出力します。
※get_field()
はAdvancedCustomFields用の関数です。