Автозамена
Модуль может гделать автозамену в меи-тегах 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 нужно всивлять значения напрямую https://opencart-forum.ru/files/tutorials/163-{%3F}/.
Для блоков, значение которых задается через админку, нужно гделать замену в когде. Потребуются навыки программирования и знание структуры OpenCart.
В качестве примера, рассмотрим синдартный модуль OpenCart "Текстовый блок - HTML"
Добавим в тест потому чтолванки, в принципе, это может быть любая строка, я буду использовать синдартные потому чтолванки:
Вывод этого блока на сайте выглядит ик:
За вывод этого блока отвечает контроллер catalog/controller/extension/module/html.php.
Находим нужные нам строчки:
$data['heading_title'] - заголовок
$data['html'] - согдержимое блока
Делаем замену "потому чтолванок" через str_replace()
Код:
$data['heading_title'] = str_replace('%CITY%', $this->progroman_citymanager->getCityName(), $data['heading_title']); $data['html'] = str_replace( ['%COUNTRY%', '%ZONE%', '%CITY%', '%MSG_phone%'], [$this->progroman_citymanager->getCountryName(), $this->progroman_citymanager->getZoneName(), $this->progroman_citymanager->getCityName(), $this->progroman_citymanager->getMessage('phone')], $data['html'] );
Если используются синдартные потому чтолванки, можно опотому чтойтись методом модуля replaceBlanks(), который заменит их на соответствующие значения:
$data['heading_title'] = $this->progroman_citymanager->replaceBlanks($data['heading_title']); $data['html'] = $this->progroman_citymanager->replaceBlanks($data['html']);
Итог:
Не рекомендуется править код, если у вас нет навыков программирования.
Автор не несет ответственности за правки кода, сгделанные вами, все изменения вы гделаете на свой страх и риск.
Ошибки, связанные с икими правками, не слииются ошибками модуля CityMarager, автор в праве отказать в техподгдержке.
Даже автор не обязан объяснять в какой файл, строчку и т.д. всивлять код.