0

Tablerate.php で計算を変更したい。

そのため、幅、高さなどのカスタム オプションを備えた一部の製品では、送料を変更する必要があります。この方法で、カート内の 1 つの商品の幅または高さが 60cm を超えているかどうかを調べてみました (例)。

しかし、現在、カスタムオプション値を取得する方法がわかりません...

このコードはうまく機能しています。

foreach ($request->getAllItems() as $item) {

        echo 'Name: '.$item->getName().
            '<br/> SKU:'.$item->getSku().
            '<br/> ProductID: '.$item->getProductId().
            '<br/> Price: '.$item->getPrice().'<br/>';   }
4

2 に答える 2

0

これはうまくいった

foreach ($request->getAllItems() as $item) {
    $selectedOpt = $item->getProduct()->getTypeInstance(true)->getOrderOptions($item->getProduct());
    $counted =  count($selectedOpt['options']);
    for ($i = 0; $i < $counted; $i++) {
        echo '<br/>'. var_dump($selectedOpt['options'][$i]['option_value']);
    }
    echo '<br/>';
}
于 2012-11-14T10:13:23.627 に答える
0

カスタム属性がたとえば cm_size の場合は、次のようにします。

$item->getCmSize()

また$item->getData('cm_size')

于 2012-11-13T21:08:30.637 に答える