2017-07-16 36 views
0

的Prestashop 1.6,我們已經爲特定產品車的規則,通過增加3個產品,另外1種產品將被添加作爲禮物車規則,如何顯示該產品具有的Prestashop 1.6

這是車中的所有運作良好頁面,

但如何對該特定產品的頁面

$context::$this->$cart->$getCartRules(); 

沒有顯示產品頁面上

我們必須顯示購物車RUL上顯示這在特定產物E,它是具有尊重規則的車,

ex. "buy this product and you will get xyz product for free" 

回答

1

我認爲ü將不得不建立自己的查詢選擇cart_rules與gift_product ID仍然活性物。

在CartRule添加靜態方法(或其中u需要),並在product.tpl直接調用,並顯示它

例如:{CartRule::getGifts($product.id)}然後,處理結果

0

構建自定義查詢相同:

$result = Db::getInstance()->executeS(' 
      SELECT *,rg.quantity as minimum_quantity FROM `'._DB_PREFIX_.'cart_rule_product_rule_value` cv 
       LEFT JOIN `'._DB_PREFIX_.'cart_rule_product_rule` pr ON cv.id_product_rule = pr.id_product_rule 
       LEFT JOIN `'._DB_PREFIX_.'cart_rule_product_rule_group` rg ON pr.id_product_rule_group = rg.id_product_rule_group 
       LEFT JOIN `'._DB_PREFIX_.'cart_rule` cr ON cr.id_cart_rule = rg.id_cart_rule 
       WHERE cv.id_item = '.$this->id_product.' AND cr.gift_product > 0 AND cr.date_to >= "'.date("Y-m-d H:i:s").'"' 
      ); 
0

我在解決方案Product.php

public function getRule($category = "0"){ 
    $rules = Db::getInstance()->executeS('SELECT *,rg.quantity as minimum_quantity FROM `'._DB_PREFIX_.'cart_rule_product_rule_value` cv 
      LEFT JOIN `'._DB_PREFIX_.'cart_rule_product_rule` pr ON cv.id_product_rule = pr.id_product_rule 
      LEFT JOIN `'._DB_PREFIX_.'cart_rule_product_rule_group` rg ON pr.id_product_rule_group = rg.id_product_rule_group 
      LEFT JOIN `'._DB_PREFIX_.'cart_rule` cr ON cr.id_cart_rule = rg.id_cart_rule 
      WHERE code = "" and ((cv.id_item = '.$this->id.' and type = "products") or (cv.id_item = '.$category.' and type = "categories")) AND cr.date_to >= "'.date("Y-m-d H:i:s").'"' 
    ); 
    return $rules; 
} 
相關問題