Добавление обработчика хука

Добавление обработчика хука

Для переноса модуля в хук, обработчика которого в нем не существует ищем в основном файле модуля (называется так же как папка модуля) уже существующий обработчик. Например для blockadvertising.php это

function hookRightColumn($params)
...

Затем для клонирования обработчика в другой хук добавляем следующий код:

function hookFooter($params)
{
	return $this->hookRightColumn($params);
}

Тем самым мы создали обработчик хука в футере, который отображает то же, что и хук в правой колонке. Теперь идем в админку Модули/Позиции/Расположить модуль. В верхнем выпадающем списке выбираем свой модуль, в нижнем - только что созданный хук.

Если же нужно не только клонировать хук, но и изменить отображаемое содержимое, то копируем уже существующий обработчик хука полностью и изменяем в нем название шаблона:

function hookRightColumn($params)
{
	global $smarty, $protocol_content, $server_host;
	$smarty->assign('image', $protocol_content.$this->adv_img);
	$smarty->assign('adv_link', $this->adv_link);
	return $this->display(__FILE__, 'blockadvertising1.tpl');
}

Затем копируем существующий шаблон blockadvertising.tpl как blockadvertising1.tpl и изменяем его по своему усмотрению. Остальные действия по расположению хука аналогичны алгоритму его клонирования.

dobavlenie-obrabotchika-xuka.txt · Последние изменения: 2015/12/27 16:22 (внешнее изменение)