2

ショッピングカートのページに小さな問題があります。

私のショッピングカートにはこれらのフィールドがあります。

  • 製品説明。(1つの製品のように$ 27

私の問題は、

の場合、ショッピングカートアイテムの数量を更新します。たとえば、1つの数量を3つの数量として更新します。また、製品の説明も変更する必要があります。1つの製品$27から3つの製品$81まで。

これは私のサンプルコードです:

<?php foreach ($_options as $_option) : ?>

            <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>            

            <?php //if($ii > 2) { ?>

            <dt><?php echo $this->htmlEscape($_option['label']) ?></dt>

            <dd style="padding-left:0px;" <?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>>

            <?php $license_val = $_formatedOptionValue['value']; ?>

この$_formatedOptionValue['full_view']を使用して、バックエンドからオプション値を取得します。だから、私は大いに混乱しました。

現在、商品説明にカスタムオプションを使用しています。カスタムオプションの値を更新する必要があります。可能性はありますか?この問題を解決するのを手伝ってください。

ありがとう

4

2 に答える 2

0

チェックアウト コントローラーをオーバーライドし、updateCheckoutPost 関数を編集してカスタム オプション値を価格で更新するだけです。

Add this code only in updateCheckoutPost function 100% working.

you need cart items id's, item's product id, qty or options array of particular product.

foreach($_POST['item_ids'] as $update_product_id){
                $product = Mage::getModel('catalog/product')->load($_POST['product_ids'][$update_product_id][0]); 
                $cart = Mage::getModel('checkout/cart');
                $cart->init();
                $params = array(
                'product' => $_POST['product_ids'][$update_product_id][0],
                'qty' => $_POST['cart'][$update_product_id]['qty'],
                'options' => $_POST['option'][$update_product_id]);
                $cart->updateItem($update_product_id,$params);
                $cart->save();
           }
于 2014-11-05T05:09:22.950 に答える
0

数量と小計を取得し、これらの値を翻訳文字列にエコーする方がはるかに簡単ではありませんか?アイテムの更新後のデータは既にあります。

$this->__('%s product %s', $qty, $subtotal)
于 2013-01-24T12:08:54.363 に答える