こんにちわ。初めて投稿いたします。商品を紹介するサイトを制作しており、
wordpressでスマートカスタムフィールドを使って商品の登録をしています。
その中でカラー展開をする商品を登録する項目として、
繰り返しのグループフィールド名「color」を作り、
画像「colorimg」
テキスト[colorid」をセットとして登録していきます。
このグループフィールド名「color」は登録されないときは
<div class="wrap shadow">ごと非表示にし、 登録があるときは <div class="colorBox">を繰り返し表示されるようにしたいです。htmlは以下です。
<div class="wrap shadow">//←「color」の登録が1つもない場合、このdivを非表示にしたいです <div class="colorBox">//←登録がある場合、1つのカラー展開の登録ごとに このdivごと繰り返したいです。 <span class="colThumb">ここに画像を表示</span> <span class="db mt10">ここにテキストを表示</span> <div> </div> --------------------------------------------- なお、通常の出力なら以下のコードで出力可能なのですが、 グループごとの登録がなかった場合<div class="wrap shadow">は出力されたままで、変な囲いだけ見えてしまう状態です。 しかもclass="colorBox" 内で画像やテキストが繰り返し処理をされてしまいます。 phpのコードを入れる場所を間違えているのはわかるのですが、入れ替えてしまうと表示すら出来なくなってしまい、混乱しています。 <div class="wrap shadow"> <div class="colorBox"> <?php $field_group = SCF::get( 'color' ); foreach ( $field_group as $fields ) { ?> <span class="colThumb"> <?php//画像出力 $image = get_post_meta($post->ID, 'colorimg', true); echo wp_get_attachment_image($fields['colorimg'], 'full'); ?> </span> <span class="db mt10"> <?php //画像出力 echo esc_html( $fields['colorid'] ); ?></span> <?php } ?> </div> </div>今まではなんとか調べて解決してきましたが、上記の場合の対応策がどうしても調べても出てきません。
本当に初歩的な質問になってしまい申し訳ないのですが、かなり行き詰まってしまっています。
どうかお分かりになる方がいらっしゃいましたらご教授いただければありがたいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/12 00:05