4

Plsは私のトラブルで私を助けてください. Magento のカートからバンドル製品を取得する必要があり、すべてのバンドル製品の選択されたアイテムを取得する必要があります。これどうやってするの?ありがとう!

4

3 に答える 3

6

マジェント1.8.1で

    $cart = Mage::getModel('checkout/cart')->getQuote();
    foreach ($cart->getAllItems() as $_item) :
        $_product = Mage::getModel('catalog/product')->load($_item->getProduct()->getId());
        if($_product->getTypeId()==='bundle') :
            $options = $_item->getProduct()->getTypeInstance(true)->getOrderOptions($_item->getProduct());
            ?>
            <dl class="item-options">
                <?php foreach ($options['bundle_options'] as $option):?>
                    <dt><?php echo $option['label'] ?></dt>
                    <?php foreach ($option['value'] as $sub) :?>
                        <dd><?php echo $sub['qty'] . " x " . $sub['title'] . " " . Mage::helper('core')->currency($sub['price'])  ?></dd>
                <?php endforeach;
                endforeach;
                ?>
            </dl>
        <?php endif;

    endforeach
于 2014-06-25T15:08:24.657 に答える
0
$_product = Mage::getModel('catalog/product')->load($_item->getProduct()->getId());
if($_product->getTypeId()==='bundle') {
        $options = $_item->getProduct()->getTypeInstance(true)->getOrderOptions($_item->getProduct());
        ?>
        <dl class="item-options">
            <?php
            foreach ($options['bundle_options'] as $option) {?>
                <dt><?php echo $option['label'] ?></dt>
                <dd><?php echo $option['value'][0]['title'] ?></dd>
            <?php
            }
            ?>
        </dl>
    <?php }

これは、バンドル アイテムの入力タイプ「ドロップダウン」で機能します

于 2014-03-10T17:23:44.360 に答える