問題
顧客セグメントを作成し、顧客と価格表の両方をこの顧客セグメントにリンクしました。リンクされた価格表では、製品の 1 つに $5 の特別価格が定義されています。この商品の「デフォルト」価格は $10 です。
顧客セグメントに属するユーザーでストアフロントにログインすると、PDP に 5 ドルの正しい価格が表示されます。ただし、この製品がバスケットに追加されると、ミニカートとカート ページに 10 ドルの「デフォルト」の製品価格が表示されます。そこにも5ドルが見られると思います。
技術的な案内
PDP の (正しい) 価格は、デフォルトにリンクするデフォルト モジュールをProductBO
使用して、から直接取得されます。ISProductPrice
ProductPrice.isml
<ISProductPrice
ProductBO="#ProductBO#"
Currency="#CurrentRequest:Currency#"
ShowInformationalPrice="true"
RichSnippetsEnabled="#RichSnippetsEnabled#"
>
カート ページの (間違った) 価格はBasketComputedProductLineItemBO
、次の (デフォルトの ISH) コードでから取得されます。
<isif condition="#PriceDisplayType EQ 'net'#">
<isprint value="#PLI:SingleBasePriceNet#">
<iselse/>
<isprint value="#PLI:SingleBasePriceGross#">
</isif>
これまでに試したこと
- Cookie/キャッシュをクリアして、完全に新しいバスケットがあることを確認します
- Customer Segmentation Service が有効になっていることを確認します (デフォルトの ISH サービス)。
- から価格を取得するために、さまざまな方法をすべて試しました
BasketComputedProductLineItemBO
- 価格表にいくつかの異なる製品を追加しました
- 顧客セグメントにいくつかの異なる顧客を追加しました
- 検索インデックスを実行しました
- ISHデモサーバーで問題を再現しようとしました
- ISHサポートページから顧客セグメンテーションに関するドキュメントを確認しました
- 顧客セグメントではなく、顧客を価格表に直接追加しようとしました。このようにすると、すべてが期待どおりに機能するようです。
この時点で、私は完全に立ち往生しています。ここからどのように進むかについての助けをいただければ幸いです。