Кастомизация blocktopmenu

Автор miron8888, 05 ноября 2015, 18:01:22

« назад - далее »

miron8888

Добрый день! Появилась необходимость изменить html вывод меню под нужды готовой вёрстки. Подскажите как можно это правильно сделать (что и куда нужно вынести) чтобы при каком либо обновлении это изменение не слетело?

Миколас

В папке модуля blocktopmenu основной файл php.
Шаблоны и стили в папке темы.

miron8888

То есть я просто заходу туда и правлю под свои нужды? А выносить его никуда не надо на случай какого либо обновления движка что бы не затёрло всё что я там изменю?

DarinSr

Кастомные шаблоны модуля и стили закачиваете в папку
/themes/ваша тема/modules/blocktopmenu/blocktopmenu.tpl
/themes/ваша тема/css/modules/blocktopmenu/css/blocktopmenu.css
Тогда можете обновлять модуль и ничего не слетит.

miron8888

#4
В том то всё и дело, что в шаблоне tpl присутствует только обороачивающий <ul> и вызов самого компонента, а править нужно не только <ul>, но и то что находится внутри вызова и сделать это нужно так что бы в последствии ничего не слетело при обновлениях! Как это реализовать?
К примеру если я хочу вместо <ul> использовать к примеру <div> или <table>. П. С . Мне не стили надо изменить, а html вывод.

coder

Если хотите чтобы при обновлении модуля не удалились ваши изменения, вам тогда нужно сделать свой модуль.
Скопируйте модуль blocktopmenu, измеините название класса, таблицы и конфигурацилнные переменные (как это деалть есть на форуме).
В методах makeMenu, generateCategoriesMenu, getCMSMenuItems в классе модуля (/modules/blocktopmenu/blocktopmenu.php) измените структуру меню.

miron8888

А можно поподробнее с этого момента? Если не затруднит, то покидать ссылочки.

miron8888

#7
Кастомизированные модули, классы и контроллеры оказывается можно выносить в директорию /override/ для того чтобы они не перетирались после обновлениях!