Php 在OpenCart中使用备用价格字段
我有一个OpenCart安装,运行两个商店,一个批发店和一个零售店。产品目录是共享的,但问题是OpenCart本身不支持多个定价选项。所以我在oc_产品表中添加了一个新字段,零售价格。我的想法是,我将使用价格字段进行批发定价,使用零售价格字段进行零售定价 我在管理方面几乎涵盖了所有内容,因此我的新字段显示在产品部分,并在数据库中更新 现在的问题是如何改变零售店前端的价格。不用说,很多不同的脚本都使用了产品价格。因此,我认为最好/最隐蔽的方法是在查询数据库并初始设置价格数据时更改价格字段。这就是我迷路的地方。。。我在一些我认为正确的地方改了,但是前端的价格没有变化。有时OpenCart可能是一个神秘的无花果Php 在OpenCart中使用备用价格字段,php,opencart,Php,Opencart,我有一个OpenCart安装,运行两个商店,一个批发店和一个零售店。产品目录是共享的,但问题是OpenCart本身不支持多个定价选项。所以我在oc_产品表中添加了一个新字段,零售价格。我的想法是,我将使用价格字段进行批发定价,使用零售价格字段进行零售定价 我在管理方面几乎涵盖了所有内容,因此我的新字段显示在产品部分,并在数据库中更新 现在的问题是如何改变零售店前端的价格。不用说,很多不同的脚本都使用了产品价格。因此,我认为最好/最隐蔽的方法是在查询数据库并初始设置价格数据时更改价格字段。这就是我
有谁能告诉我在哪里更改价格的最佳地点吗?我假设您已经在管理区域为批发和零售客户创建了不同的客户类型 在这种情况下,将此功能添加到模型中非常简单 开放式:
catalog/model/catalog/products.php
在第22行或其周围,您应该看到一条如下所示的线:
$query->row['price'] = ($query->row['discount'] ?
$query->row['discount'] : $query->row['price']);
确定零售客户的数值,假设为1,批发客户为2
下面使用的变量$customer\u group\u id
先前是在getProduct()
方法的打开位置设置的
将上一行替换为以下内容:
if ($customer_group_id == 2):
$query->row['price'] = ($query->row['discount'] ?
$query->row['discount'] : $query->row['price']);
else:
$query->row['price'] = ($query->row['discount'] ?
$query->row['discount'] : $query->row['retail_price']);
endif;
现在,如果您的客户已登录且不是批发客户,或者未登录,他们将看到零售价格,如果他们作为批发客户登录,他们将看到批发价格