1

価格表示オプションを機能させようとしていますが、ティアプライスに固執しています。訪問者が私のサイトに来たら、cookie にパラメーターを追加しました。

例: http://www.foo.com/category/product.html?sidx=5

これで、訪問者は sidx パラメータを使用してサイトにアクセスします。オブザーバー: catalog_product_get_final_price は、最終価格を Customergroup 5 のこの製品の最初の tierprice に設定します。

訪問者の顧客グループはまだログインしていません。ここで、登録せずに Customergroup ID 5 の他のティア価格が必要です。

その解決策を見つけるために多くのことをグーグルで検索しましたが、要点がわかりません。

よろしくボティ

4

1 に答える 1

1

任意の製品の Tier 価格を取得する場合:

$product = Mage::getModel('catalog/product')->load(PRODUCT_ID_HERE);
$tierPrices = $product->getData('tier_price');

if (!is_array($tierPrices)) {
    $tierPrices = array();
}

$result = array();

foreach ($tierPrices as $tierPrice) {
   $row = array();
   $row['customer_group_id'] = (empty($tierPrice['all_groups']) ? $tierPrice['cust_group'] : 'all' );
   $row['website']           = ($tierPrice['website_id'] ? Mage::app()->getWebsite($tierPrice['website_id'])->getCode() : 'all');
   $row['qty']               = $tierPrice['price_qty'];
   $row['price']             = $tierPrice['price'];

   $result[] = $row;
}

// $result now has an array of all tier prices...
// looking for cust_group = 5 would be trivial:

foreach ($tierPrices as $tierPrice) {
    if($tierPrice['cust_group'] == 5) {
        return $tierPrice; // this is what you want..
    }
}
于 2012-09-13T10:30:36.787 に答える