<?php
class onSupercomponentContentBeforeItem extends cmsAction {
public function run($data){
.....
$blabla = "Супер текст, от супер компонента!";
.....
вот путь компонента
system/controllers/supercomponent/hooks/content_before_item.php
Переменную $blabla я хочу вывести к примеру здесь default_item.tpl.php. Скажите пожалуйста, как обратиться к переменной $blabla хука компонента и вывести её?
public function run($data) { ``` $data["blabla"] = $blabla; return $data; }
Хук content_before_item, это не хук компонента суперпупер, это хук компонента контент. И он существует именно для "вынесенной" обработки переменной $data. Все действия в хуке выполняются именно с этой переменной и если её не трогать, смысла в этом хуке нет.И я думаю не нужно трогать переменную $data .
Увы, так просто не сработает. Ведь отправки в шаблон переменной блабла нет.
Вы правы, но запихнуть блабла, например, в $item в наших силах?Ведь отправки в шаблон переменной блабла нет.
Именно!Вы правы, но запихнуть блабла, например, в $item в наших силах?
Да и вообще вопрос не понятен. Вы используете хук другого компонента или своего супер? Если другого, то в шаблон какого нужно передать? Например вы создаёте событие в контроллере А и вам надо передать в шаблон контроллера А переменную из контроллера В. Тогда вы создаёте хук события контроллера А в контроллере В. И теперь вы можете переменую из контроллера В поместить в массив данных хука и вернуть назад. Или же, как я писал выше, можно использовать хук process_render_A_default в контроллере В и передать $blabla в виде html в шаблон default контроллера А