В админке нужно переопределить файл заказов, но его уже переопределил другой модуль. Как быть?
И вопрос к знатокам:
Пишу модуль. Как сделать так, чтобы сначало проверить если файл переопределен другим модулем, то переопределить файл у этого модуля, а если файл не переопределен, то переопределить файл системы?
Переопределите оба. Smarty всё сделает за Вас.
Подскажите, а как переопределить шаблон у другого модуля?
Можно попробовать оверрайд /overrides/addons/ADDON_ID/overrides/views/orders/...
Или просто выставить бОльший приоритет чем у второго модуля
Странно, ни то ни то не помогает…
Сделайте приоритет меньше
Нет результата.
Приоритет в файле addon.xml
“priority"100”/priority"
версия 4.11
?
Приоритет для установленных модулей хранится в базе. Или изменяйте в базе, или переустанавливайте модуль.
Изменил в базе. Приоритет ставил и выше и ниже. Результат нуль.
Кэш удалите, это дело кешируется еще
Ребята Спасибо! В базе прописал приоритет, обновил кеш! И… Я переопределил файл, так сказать первым!
Но!
Дело в том, что так как я переопределил первым, получил контроль над файлом. А тот модуль который переопределял раньше, делал полезные действия. Сейчас он это не может сделать.
Переформулирую задачу: Как мне переопределить именно файл модуля, который уже переопределил файл ядра?
Если Вы переопределите его, то тоже ничего не будет сделано. Суть переопределения - это выбор по какому пути взять файл для генерации, не будет создаваться 3 контента, всё-равно отработает только Ваш.
Суть такая, я знаю что мой модуль будет расширять возможности того модуля, у которого я хочу переопределить файл. Я его скопирую, его возможности остануться, а я без изменения того модуля, напишу то, что нужно мне…
Проблема в том, что никак не получается его переопределить…
путь до файла для переопределения использую такой:
/design/backend/templates/addons/combine_orders/overrides/addons/my_changes/overrides/views/orders/manage.tpl
combine_orders - мой
my_changes - пример
Вам остается только взять изменения из модуля my_changes и вставить их в свой шаблон, обернув таким кодом
{if $addons.my_changes.status == 'A'}
.. код из стороннего модуля...
{/if}
По-другому никак
А как вообще можно узнать какой модуль переопределяет файл?
Боюсь, что такого механизма нет