Smart Custom Fieldsで作ったグループの中で入力のない項目を非表示にしたい
-
「Smart Custom Fields」を使用して、「商品名」「価格」「コメント」の3つのカスタムフィールドをグルーピングし、ループ表示をしております。
┌──────────────┐
│商品名 │コメント │
│(1,080円) │ │
└──────────────┘
│商品名 │コメント │
│ │ │
└──────────────┘
│商品名 │コメント │
│(5,400円) │ │
└──────────────┘しかし、上記のように価格の入力のないものには、(円)の文字列も表示させたくないので、価格の入力のないものは非表示にするifを追加しました。
<table> <?php $repeat_group = SCF::get( 'goods' ); foreach ( $repeat_group as $fields ) { ?> <tr> <th><?php echo esc_html( $fields['goods-name'] ); ?> <?php if(get_post_meta($post->ID,'goods-price',true)): ?> <span>(<?php echo number_format(esc_html( $fields['goods-price'] )); ?>円)</span> <?php endif; ?> </th> <td><?php echo esc_html( $fields['goods-comment'] ); ?></td> </tr> <?php } ?> </table>
…が、ループの一つ目の入力状態だけが反映され、一つ目に入力がなければ他も全部非表示、一つ目に入力があれば他も全部表示、となってしまいます。。。
どうすればそれぞれの入力状態が反映できるのか、是非お知恵をお借りできればと思います。
※そもそも繰り返しグループの中で、このような条件分岐は無理でしたら、ご指摘いただけたらと思います。どうぞよろしくお願いいたします。
2件の返信を表示中 - 1 - 2件目 (全2件中)
2件の返信を表示中 - 1 - 2件目 (全2件中)
- トピック「Smart Custom Fieldsで作ったグループの中で入力のない項目を非表示にしたい」には新たに返信することはできません。