2016-10-18 11 views
0

私はPrestashop 1.6.1.4を持っており、店内のほとんどの商品は在庫なしですが注文することができます。Prestashop:カタログの価格ルールにオプションを追加して在庫商品を選択するか、在庫切れ

この場合、ゼロ在庫(予約注文)の商品を注文するお客様に、特定の%割引を受け取ることを希望します。

このようなフィルタをカタログ価格ルールに追加するにはどうすればよいですか?

答えて

0

Prestashopで申し訳ありません。私たちの知識を1として

よろしく

0

、これはカタログ価格ルールメニューから条件を追加することにより、現実的ではありませんが、あなたはこれを実現するためのコードを微調整することができます。

これを行うには、必要に応じて割引を提供するクーポンを作成し、カートのステータスを確認して、生成されたクーポンを現在のカートに適用する必要があります。あなたはカートの在庫状況を確認するには、次のコードを使用することができます

$stock = false; 
$check = 0; 
$products = $this->context->cart->getProducts(); 
foreach ($products as $pro) 
{ 
if ($pro->out_of_stock) 
{ 
$check++; 
} 
} 
if ($check == count($products)) 
{ 
$stock = true; 
} 

$株式の値が最後に真である場合は、あなたのカートにあるすべての製品は、在庫切れです。そして、あなたは現在のカートに入れるカートルールを適用するには、次のコードを使用することができます。

$cart_rule_id = CartRule::getIdByCode(COUPON_CODE); 
$this->context->cart->addCartRule(cart_rule_id); 
+0

このオプションは、我々はそれをテストします求めて何のために非常に便利ではないですが。 コードを挿入する場所はわかりませんが、 –

+0

このコードをフロントエンドの注文コントローラに追加すると、顧客がチェックアウトページに移動するたびにこのコードが実行されます –

関連する問題