0

見積もりを受け取り、特定の基準が満たされた場合に割引を適用するモジュール (私が作成したものではありません) があります。これはそれ自体でうまく機能します。ショッピング カートのルールも単独で機能します。

ただし、組み込みの Magento ショッピング カート (合計価格) ルールが適用される前に、関連する割引を適用するカスタム モジュールが必要です。現状では、Magento のものが最初に適用され、次にカスタムのものが適用されるため、Magento の割引が必要ない場合に発生します。

モジュールの順序を制御するものと、別の順序を指定する方法。

4

1 に答える 1

2

MagentoにはcollectTotals機能があります(これは複合パターンの実現だと思います)。それが基本的に行うことは、指定された各Totals Collectorを順番にアドレス指定し、そのメソッドを呼び出すことcollect()です。

ほとんどの場合、モジュールの合計コレクターは、SalesRule( code discountを持つ) コレクターの後に呼び出されます。必要なこと:config.xmlカスタム割引モジュールの構成ファイルを開き、xpath config/global/sales/quote/totals/[モジュール エイリアス]を見つけて、ディレクティブを追加 (または存在する場合は変更) します。<before>discount</before>

そのようにして、カスタム モジュールの総コレクターに、その前に割引を適用するように命令していますSalesRule

于 2012-10-08T18:17:36.423 に答える