Автозамена
Модуль может делать автозамену в мета-тегах title, keywords, description, если включить соответствующую опцию в настройках модуля:
После этого можно добавлять в соответствующие поля болванки, которые при выводе заменяются на соответствующие значения:
%CITY% - город,
%CITY_GC% - город в родительном падеже (кого? чего? нет ...),
%CITY_PC% - город в предложном падеже (О ком? О чём?)
%ZONE% - регион,
%ZONE_GC% - регион в родительном падеже,
%ZONE_PC% - регион в предложном падеже,
%COUNTRY% - страна,
%COUNTRY_GC% - страна в родительном падеже,
%COUNTRY_PC% - страна в предложном падеже,
%MSG_key% - геосообщение с ключом key, например, %MSG_phone% (ключи задаются в админке модуля на вкладке "Геосообщения")
Будем называть их "стандартные болванки".
Автозамена в произвольном блоке
Автозамены болванок не работают на всем сайте, поэтому если вставить %CITY% в произвольном месте, то замены не произойдет. Для шаблонов tpl и twig нужно вставлять значения напрямую, см. "Получение данных из модуля (страна, регион, город и др.) в контроллерах и шаблонах".
Для блоков, значение которых задается через админку, нужно делать замену в коде. Потребуются навыки программирования и знание структуры OpenCart.
В качестве примера, рассмотрим стандартный модуль OpenCart "Текстовый блок - HTML"
Добавим в тест болванки
Теперь этот блок на сайте выглядит так:
За вывод этого блока отвечает контроллер catalog/controller/extension/module/html.php.
Находим нужные нам строчки:
$data['heading_title'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['title'], ENT_QUOTES, 'UTF-8'); $data['html'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['description'], ENT_QUOTES, 'UTF-8');
$data['heading_title'] - заголовок
$data['html'] - содержимое блока
Добавим после них код замены болванок, чтобы получилось так:
$data['heading_title'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['title'], ENT_QUOTES, 'UTF-8'); $data['html'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['description'], ENT_QUOTES, 'UTF-8'); $data['heading_title'] = $this->progroman_citymanager->replaceBlanks($data['heading_title']); $data['html'] = $this->progroman_citymanager->replaceBlanks($data['html']);
Итог:
Не рекомендуется править код, если у вас нет навыков программирования.
Автор не несет ответственности за правки кода, сделанные вами, все изменения вы делаете на свой страх и риск.
Ошибки, связанные с такими правками, не считаются ошибками модуля CityMarager, автор в праве отказать в техподдержке.
Также автор не обязан объяснять в какой файл, строчку и т.д. вставлять код.