分类分类
更新时间:2026-10-06 15:49:38作者:zhao
ecshop后台默认管理页面里有一项功能是最小购物金额限制,意思当客户买的东西价格太小,没有利润可赚的时候,不允许用户提交订单。

然而在实际的某些方面的买卖中,咱们也许还需要一个最大购物金额约束,所以此文的由来即是这儿。初看,形似很简略么,一个表单里加个inputtext,前面搞个label或许span写上“最大购物金额”,然后把该添加的inputtext的value存储到数据库里,但是事实上却并不是那么的简略。
先来看后台该选项的配置文件为/admin/shop_config.php,打开后,发现其文件内并没有任何直接可以预读到的东西,也没有呈现出上面所说的表单的基础结构。好吧,先看看文件内有些什么吧。很快找到下面那一行,得出选项存储的数据都存放在名为shop_config的table里。
$sql = "SELECT * FROM " . $ecs->table('shop_config') . " WHERE type<>'hidden' $config_groups $excludes_groups ORDER BY parent_id, sort_order, id";
文件末尾有个函数,读取配置到数组里变量存放,看来是用来直接读取数据库里的shop_config表里的各项的值。
/** * 获得设置信息 * * @param array $groups 需要获得的设置组 * @param array $excludes 不需要获得的设置组 * * @return array */function get_settings($groups=null, $excludes=null)
那么shop_config里的数值是什么时候生成的呢?这个是安装初始化的时候写入到数据库里的,所以接下来打开shop_config表,很容易找到code为min_goods_amount的value为10。

parent_id对应的就是get_settings函数里的group,购物流程是第4个项目,所以这里是4:

然后根据上文提到的sql语句,基本可以判定按id大小顺序读取该表内容,然后呈现在Ecshop后台的配置选项中,尝试在表里最后直接添加一行数据:

另外需要自行调整对应的语言翻译文件/languages/zh_cn/admin/shop_config.php,对应位置添加下面两行。
$_LANG['cfg_name']['max_goods_amount'] = '最大购物金额'; $_LANG['cfg_desc']['max_goods_amount'] = '低于此购物金额,才能提交订单。';
以及languages/zh_cn/shopping_flow里添加超过限额返回的提示内容。
$_LANG['goods_amount_not_enough'] = '您购买的商品没有达到本店的最低限购金额 %s ,不能提交订单。';
最终,刷新后台配置页面,显示如下:

当用户购买超过1000元的物品时:

前台返回错误页面给用户:

相关
摄像头远程监控看家2026官方最新版本生活服务36.4 MBv1.0.02026-10-06
下载公务员省考最新手机版学习办公57.5 MBv6.09.112026-10-06
下载野性蜂巢(Wild Hive)经营养成267.49 Mv1.66.42026-10-04
下载趣好卖app网上购物74.76 Mv5.2.52026-10-04
下载兔叽月记app医疗健康55.33 Mv1.5.22026-10-04
下载魔力弹神策略游戏33.56 Mv1.0.02026-10-04
下载大破坏幸存者策略游戏62.28 Mv1.0.32026-10-04
下载啃豆小仓拼豆app实用工具41.74 Mv1.32026-10-04
下载方块公国安卓移植版策略游戏1.58Gv1.2.202026-10-04
下载快车顺风车出行2026官方最新版本生活服务82.0 MBv1.1.22026-10-04
下载网约上门按摩2026官方最新版本生活服务73.9 MBv2.0.22026-10-04
下载道运考试通(道路考练工具)学习办公32.8 MBv6.0.12026-10-04
下载










