Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Opencart最低订单价格不包括一个类别_Php_Opencart - Fatal编程技术网

Php Opencart最低订单价格不包括一个类别

Php Opencart最低订单价格不包括一个类别,php,opencart,Php,Opencart,我正在使用opencart并成功地为所有交易添加了最低订单价格。 这是我使用的代码: <?php if ($this->cart->getSubtotal() >= 10) { ?> <div id="payment"><?php echo $payment; ?></div> <?php } else { ?> <div class="warning">Minimum 10 Euro to checkou

我正在使用opencart并成功地为所有交易添加了最低订单价格。 这是我使用的代码:

<?php if ($this->cart->getSubtotal() >= 10) { ?>
<div id="payment"><?php echo $payment; ?></div>
<?php } else { ?>
<div class="warning">Minimum 10 Euro to checkout</div>
<?php }  ?> 
更新2:我试过了,但是它弹出了一个对话框,上面写着just error和ok按钮

我试过这个
它没有给出任何错误,并且执行相同的工作(所有订单的最小金额,无论类别id如何)

我会这样做:

扩展
系统/library/cart.php
并添加一个方法:

公共功能产品分类($category\u id){
$product_ids=array();
foreach($this->getProducts()作为$product){
$product_id[]=$product['product_id'];
}
$categories=$this->db->query('db_PREFIX.'product_to_category,其中product_id位于('.infrade(',',$product_id.))->行中);
$category_id=array();
foreach($categories作为$category){
$category_id[]=$category['category_id'];
}
if(在数组中($category\u id,$category\u id){
返回true;
}
返回false;
}
此方法应接受要测试的
$category\u id
参数,并应加载购物车中所有产品的类别。首次匹配后,将返回true,如果不匹配,将返回false。您现在可以通过以下方式使用此方法:


结帐最少10欧元

只需在
$this->cart->productsAreInCategory(1)中替换类别ID
使用正确的类别。

我认为没有任何快捷方式。您需要在两者之间添加一个
elseif
条件,以检查现有产品的类别是否与您要排除的类别相同。感谢您的帮助,我收到了此错误解析错误:语法错误、意外的t\u BOOLEAN\u或inOK,以及ere?请在将来为我们提供完整的错误消息…编辑您的问题,添加此解决方案的错误消息,并添加出现错误的代码部分…谢谢。好的,我可能是瞎子或哑巴,但我没有看到问题。无论如何,请尝试将条件的第一部分
$this->cart->getSubtotal()放入>=10
变成了妄想,就像这样:
($this->cart->getSubtotal()>=10)
-也检查我编辑的答案…@user3003829我完全改变了
系统/库/cart.php
中的方法-请更新、尝试并让我知道;-)现在它应该可以正常工作了(而且应该更快一点)。耶!你是我的英雄。。。它是有效的。。。但是,如果我从另一个类别添加了另一个产品,但仍然低于10,则该产品不起作用(相同顺序的多个产品)
<?php if ($this->cart->getSubtotal() >= 10 || $this->cart->productsAreInCategory(1)) { ?>