0

カスタムの複数選択属性をリストとして表示する方法はわかりましたが、すべてのリスト アイテムに ID またはクラスを追加する方法はわかりませんでした。これにより、テキストの代わりに CSS を使用して画像を表示できます。

皆さんが私を助けてくれることを願っています。ちなみに、これはカスタム属性「評価」をリストとして表示するために使用するコードです。

        <?php if($_product->getResource()->getAttribute('rating')->getFrontend()->getValue($_product)): ?>
        <ul><li><?php
        $_comma = ",";
        $_list = "</li><li>";
        echo str_replace($_comma,$_list,$_product->getResource()->getAttribute('rating')->getFrontend()->getValue($_product))    ?>    
        </li></ul>
        <?php endif; ?> 
        </div>
4

1 に答える 1

0

関数の戻り値の正確な形式を知らなければ、100% 確信はできませんが、これでうまくいくと思います。

    <div>
    <?php if($_product->getResource()->getAttribute('rating')->getFrontend()->getValue($_product)):?>
        <ul>
        <?php $i=0?>
        <?php foreach(explode(',', $_product->getResource()->getAttribute('rating')->getFrontend()->getValue($_product)) as $value) : ?>
            <li id="value_<?php echo $i?>"><?php echo $value ?></li>
            <?php $i++ ?>
        <?php endforeach ?>
        </ul>
    <?php endif; ?> 
    </div>

戻り値を変更して配列を返す方がおそらく少し簡単ですが、戻り値がカンマ区切りのリストであり、簡単に変更できない場合は、爆発でうまくいくはずです。

于 2012-05-22T15:15:15.050 に答える