Вызов плагина из отчетов Есть решение
Добрый день! Подскажите, как правильно вызывать плагин из вкладки
Отчеты. В документации у вас указан общий вызов. Перепробованые все
возможные способы
?action=reports#/plugin=pluginid/
?action=reports#/hash=pluginid/
?action=reports#/pluginid/
4 ответа
Вызов конкретного действия - ?plugin=PLUGIN&action=ACTION в этом случае выполнится действие ACTION прописанное в PLUGIN.
Или же сразу прописать нужный текст или ссылку через хук http://www.webasyst.ru/developers/docs/plugins/hooks/shop/backend_reports/
Идея в том, чтобы полностью использовать уже готовый layout вкладки отчеты. Например такая возможность есть в во вкладке продукты, или в приложении Сайт (в боковом меню).
Чтобы сделать, как вы хотите, план примерно такой. Нужно среагировать на изменение #hash части в URL браузера. Если хэш нужный, то загрузить HTML из своего контроллера и заменить кусок страницы на только что загруженный HTML.
Предположим, вы хотите, чтобы ваша страница открывалась по хэшу #/mycoolreport/
Нужно во время генерации лэйаута (т.е. по хуку backend_reports) добавить на страницу такой JS
Тогда существующий внутренний механизм отчётов вызовет эту функцию, когда #hash поменяется на нужный нам. Функция должна загрузить HTML из PHP-контроллера в вашем плагине и вставить в область основного контента. JS часть очень простая, и пример можно посмотреть в файле shop/js/reports.js - например, метод cohortsAction.
Спасибо Леонид!