Пожалуйста, предложите способ добавить дополнительный регион/штат при оформлении заказа, которого нет в Opencart по умолчанию.
Как добавить регион/штат в кассу opencart?
Ответы (2)
Вы также можете добавить регион для любой страны из панели администратора.
настройки->локализация->зона
Регион/штаты находятся в таблице oc_zone
. Вы можете добавить дополнительные записи в эту таблицу, но убедитесь, что вы указали правильный код страны и также внесли его в запись.
Коды стран находятся в таблице oc_country
.
Так, например, если вы хотите добавить новый регион под названием «Народная Республика Клекхитон» в Соединенное Королевство, сначала найдите код страны для Соединенного Королевства в 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);
to
zone_data = false;
Как только вы подтвердите, что все работает нормально, верните эту строку в исходное содержимое.