Не зарегистрирован
Вход
Забыли пароль?
Регистрация
Подписаться
Сэкономьте время — перед вопросом на форуме узнайте, как найти ответ быстрее
По техническим проблемам необходимо обращаться в Консультационный центр

Поиск по форуму: 

Приглашаем в блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.

Форум  ->   Разработка плагинов, вопросы по API  ->  Работа с хлебными крошками

Раздел для разработчиков. Обсуждение создания плагинов, вопросы и пожелания по API Amiro.CMS

Добавлено: 03.05.14 09:54:12 #1



Регистрация: 26.05.08
Сообщений: 984


Обратиться по имени

Коллеги, подскажите, может кто знает, куда копать?

Каким образом в Амиро можно поработать с хлебными крошками, которые ##path## для страницы? Интересует вмешательство в их построение или модификация уже построенных перед выводом страницы.



Добавлено: 05.05.14 09:57:48 #2

Амиро



Регистрация: 21.03.07
Сообщений: 261


Обратиться по имени

В модулях "Каталог товаров : Товары", "Каталог товаров : Категории" есть параметр "Отображение пути категорий (хлебные крошки)", уточните, требуется какое-то более общее решение?



Добавлено: 05.05.14 10:05:10 #3



Регистрация: 26.05.08
Сообщений: 984


Обратиться по имени

Я не про каталожные крошки, а про страничные.

Что мне нужно сделать: мне нужно проверить в крошках наличие конкретной страницы и, если она присутствует, произвести модификации в крошках: добавить вместо главной страницы ссылку на одну из внутренних.

Я безусловно могу сделать это в шаблоне, но мне не хочется, так как есть интерес сделать с помощью новых возможностей Амиро.

Делать str_replace по всему коду страницы перед его выводом тоже не хочется, так как некрасиво.

Может есть какое-то тру-решение, с событиями и обработчиками?



Добавлено: 05.05.14 12:54:39 #4

Амиро



Регистрация: 21.03.07
Сообщений: 261


Обратиться по имени

Если имеется в виду спецблок "Заголовок страницы", то на текущий момент имеется возможность модифицировать только уже обработанный шаблонизатором путь (HTML-код) следующим образом:
файл "_local/front_functions.php"
AMI_Event::addHandler('v5_on_apply_data', 'cstOnApplyData', AMI_Event::MOD_ANY);

function cstOnApplyData($name, array $aEvent, $handlerModId, $srcModId){
    if('page_body' === $aEvent['type']){
        // $aEvent['aData']['page_header'] содержит HTML-код хлебных крошек, который можно изменить
    }

    return $aEvent;
}


В одной из следующих версий мы добавим возможность манипуляции с данными хлебных крошек до обработки шаблонизатором.



Добавлено: 05.05.14 15:37:25 #5



Регистрация: 26.05.08
Сообщений: 984


Обратиться по имени
Добавлено: 11.05.14 12:47:24 #6



Регистрация: 26.05.08
Сообщений: 984


Обратиться по имени

В версии 5.14.8.20 данный способ не сработал.

Решил через функцию CustomApplyVars, которую видимо и предполагалось зареплейсить в событии v5_on_apply_data.



Добавлено: 12.05.14 09:12:24 #7

Амиро



Регистрация: 21.03.07
Сообщений: 261


Обратиться по имени

Все верно, согласно списку событий, "v5_on_apply_data", заменяющее ф-цию CustomApplyVars появилось в версии 6.0.2.





Создать новую тему

Всего тем: 6661
Всего сообщений: 27851
Всего зарегистрированных пользователей: 26747
Последний зарегистрированный пользователь: isollution