如何在opencart checkout中添加Region / State?

时间:2015-03-31 19:41:11

标签: opencart opencart2.x

请建议一种在结帐时添加额外区域/州的方法,这在Opencart默认情况下不存在。

2 个答案:

答案 0 :(得分:2)

您也可以从管理面板为任何国家/地区添加区域。

设置 - > localisation->区

答案 1 :(得分:1)

区域/州位于oc_zone表中。您可以在此表中添加额外的条目,但请确保获得正确的国家/地区代码并将其放入记录中。

国家/地区代码位于oc_country表中。

因此,例如,如果你想添加一个名为" The People's Republic of Cleckheaton"到英国,首先在oc_country查找英国的国家代码。代码是222.

然后,您可以使用以下内容将新区域添加到oc_zone

INSERT INTO `oc_zone` (`zone_id`, `country_id`, `name`, `code`, `status`) VALUES (NULL, '222', 'The Peoples Republic of Cleckheaton', 'PRC', '1');

最后还有一个小问题。 Opencart实际上会缓存所有国家/地区和区域数据,因此如果您添加这样的新字段,它可能无法显示,因为旧数据将被缓存。

您应该可以通过清除浏览器的缓存来解决这个问题,但如果没有更新\catalog\model\localisation\zone.php中的以下行警告:这是在opencart 1.5.6中,但应该类似于2.0

$zone_data = $this->cache->get('zone.' . (int)$country_id);

zone_data = false;

一旦您确认其工作正常,请更新该行以恢复其原始内容。