Что за хук: content_{$ctype['name']}_item_html

 
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1862
Код PHP:
  1. $hooks_html = cmsEventsManager::hookAll("content_{$ctype['name']}_item_html", $item);
  2. if ($hooks_html) { echo html_each($hooks_html); }
Вызывается в /templates/default/content/default_item.tpl.php
При попытке подключить такой хук (даже без действий в хуке) на страницу выводится чистая без шаблона страница с тестом записи материала.

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

и еще вопрос: чем отличается вызов hook от hookAll, например такой:
Код PHP:
  1. $html = cmsEventsManager::hook("photos_item_html", $photo, false);
  2. if ($html) { echo $html; }
Редактировалось: 1 раз (Последний: 25 февраля 2016 в 15:01)
Дополнения для InstantCMS
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4577
kreator:
При попытке подключить такой хук (даже без действий в хуке) на страницу выводится чистая без шаблона страница с тестом записи материала.
Значит ваш хук сделан неверно, вероятно отдает не то, что должен.
kreator:
и еще вопрос: чем отличается вызов hook от hookAll, например такой:
http://docs.instantcms.ru/dev/controllers/hooks
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Реклама
cms
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1862
Вызов:
Код PHP:
  1. $hooks_html = cmsEventsManager::hookAll("content_{$ctype['name']}_item_html", $item);
  2. if ($hooks_html) { echo html_each($hooks_html); }
Хук:
Код PHP:
  1. <?php
  2.  
  3. class onContent{$ctype['name']}ItemHtml extends cmsAction {
  4.  
  5. public function run($item) {
  6.  
  7. return $item;
  8.  
  9. }
  10.  
  11. }
естесственно, что вместо {$ctype['name']} подставлено имя типа контента

что тут не так? что получили - то и вернули

и почему этот хук в данном случае вызван именно в шаблоне а не в экшене контроллера
Редактировалось: 3 раз (Последний: 25 февраля 2016 в 15:15)
Дополнения для InstantCMS
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4577
kreator:
что тут не так?
данный хук должен отдавать строку, т.е. тип string. Например html код. Вы же отдаете массив.

kreator:
и почему этот хук в данном случае вызван именно в шаблоне а не в экшене контроллера
Потому что нужно было поставить этот хук здесь. Немного странный вопрос)
Редактировалось: 1 раз (Последний: 25 февраля 2016 в 15:16)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1862
можно хоть малейший пример? хук вообще не реагирует, при вызове хука выводятся все поля записи в чистом виде на чистом экране без шаблона, чтобы в файле хука не писалось. Даже если создать пустой файл с названием хука. Никакой реакции.
Редактировалось: 1 раз (Последний: 25 февраля 2016 в 15:24)
Дополнения для InstantCMS
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4577
Код PHP:
  1. class onВашконтроллерContentТипконтентаItemHtml extends cmsAction {
  2.  
  3. public function run($item) {
  4.  
  5. return 'Мой хук';
  6.  
  7. }
  8.  
  9. }
В манифесте добавить content_типконтента_item_html
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1862
Код PHP:
  1. onВашконтроллерContentТипконтентаItemHtml
ну точно ... контроллер то я не указал.
спасибо.
Дополнения для InstantCMS
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: