首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Opencart中禁用用于销售产品的优惠券

在Opencart中禁用用于销售产品的优惠券
EN

Stack Overflow用户
提问于 2017-11-10 22:16:00
回答 3查看 1.2K关注 0票数 1

嘿,我想在Opencart中禁用优惠券销售产品。

我找到了优惠券代码,当优惠券不起作用时,这里是"if-s“的列表…我必须在这里添加一个条件,当产品在折扣$status = false;上时

但是我不知道如何检查产品是否有特价…

代码语言:javascript
运行
复制
if ($coupon_query->row['total'] > $this->cart->getSubTotal()) {
    $status = false;
}
$coupon_history_query = $this->db->query("SELECT COUNT(*) AS total FROM `" . DB_PREFIX . "coupon_history` ch WHERE ch.coupon_id = '" . (int)$coupon_query->row['coupon_id'] . "'");

if ($coupon_query->row['uses_total'] > 0 && ($coupon_history_query->row['total'] >= $coupon_query->row['uses_total'])) {
    $status = false;
}

if ($coupon_query->row['logged'] && !$this->customer->getId()) {
    $status = false;
}
EN

回答 3

Stack Overflow用户

发布于 2017-11-11 15:02:40

这是针对版本2.3.0.2的

在您的文件catalog/model/extension/total/coupon.php中查找函数public function getTotal($total)

紧挨着这条线

代码语言:javascript
运行
复制
$this->load->language('extension/total/coupon');

添加

代码语言:javascript
运行
复制
$this->load->model('catalog/product');

接下来,在相同的函数中搜索$discount = 0;。在$discount = 0;添加之前

代码语言:javascript
运行
复制
$product_details = $this->model_catalog_product->getProduct($product['product_id']);
if($product_details['special']) {
    continue;
}

这将跳过对有特价的产品应用折扣,而将适用于购物车中的其他产品。

票数 4
EN

Stack Overflow用户

发布于 2018-12-17 17:58:33

感谢你的代码,它工作得很好,但当我添加这段代码时,我注意到出现了另一个bug。当我添加未销售的产品和正在销售的产品时,折扣值不正确。优惠券价值类型设置为固定价格。示例:折扣券-20美元产品1-10美元-特价产品2-20美元-特价产品3-100美元-非特价产品

折扣券价值在结账时显示为:-17,65或更多。这是我在coupon.php中做的检查

代码语言:javascript
运行
复制
if ($status) {
  if ($coupon_info['type'] == 'F') {
    $discount = $coupon_info['discount'] * ($product['total'] / $sub_total);
  } elseif ($coupon_info['type'] == 'P') {
    $discount = $product['total'] / 100 * $coupon_info['discount'];
}
票数 0
EN

Stack Overflow用户

发布于 2020-04-04 22:08:09

如果你寻找foreach ($this->cart->getProducts() as $product) {,你需要在if (in_array($product['product_id'], $coupon_info['product'])) {之后再次添加上面相同的代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47224770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档