Доброго утра всем.
Есть некий код, вставляемый в шаблон (node.tpl.php). Допустим, это код счетчика(не суть важно), и в р-те его работы что-то выводится на сайте.
Требуется вывести результат выполнения этого кода во вполне определенных местах, и не на всех страницах.
С вопросом вывода лишь на определенных страницах я разобрался.
Проблема: как вывести результат под конкретным блоком на странице? Что и где и как надо прописывать?
К сожалению, код необходимо вставлять именно в шаблон, при вставке напрямую в блок - не срабатывает.
Большое спасибо.
UPD: В админке создается пустой блок, в тело блока пишется произвольный текст(иначе блок не будет отображаться!). В теме создается файл вида block-block-XXX.tpl.php, где ХХХ - дельта(номер) блока. В файл вписываете код.
...
Работает!
Комментарии
1. разобраться, почему Ваш код не работает в блоке (может все же поведуете, что он делает, или хотя бы какие аргументы с материала принимает? что то подсказывает, можно в эту сторону копнуть ) и вывести его в блоке в нужном месте.
2. вывести блок, после которого нужно разместить счетчик, в node.tpl программно через (module_invoke - искайте в поиске), а уж после него воткнуть свой счетчик.
UPD: это два варианта, а не последовательность шагов если что )
Контекстная реклама.
Код подобного вида http://www.sql.ru/forum/actualthread.aspx?tid=936617
Если его удастся вывести в блоке, это хорошо)
То бишь никакой связи с материалом (объектом node нет)? Тогда не понимаю, в чем проблема.
Создайте блок, в него ваш сниппет (модуль php включите для php filter)
точно нужно включить модуль php и при вводе сниппета выбрать формат PHP code
Именнно так и делал, вроде как говорят, что не видят вывода р-та на странице, тогда как в шаблоне - все ок.
Впрочем, уточню у их специалиста.
с module_invoke разобрался, остался лишь один вопрос:
как выводить через этот хук блок в нужном регионе темы?(в node.tpl.php разумеется)?
Спасибо.
Я не понимаю Вас. нужно вывести в регионе - создайте блок с php кодом, тем более нет у вас никакой привязки к материалу, и выводите (настраивайте) как обычный блок.
Если же нужно выводить где-то посреди материала самого (среди филдов, под заголовком, после/внутри текста и еще триллион вариантов...) - выводите снипетом прямо в темплейте ноды.
При выводе через вставку кода в блок(и включенном php filter) - НЕ срабатывает. При вставке кода в node.tpl.php - срабатывает. Осталось указать в коде, в каком регионе должен быть выведен вставленный в node.tpl блок.
Воспользуйтесь поиском - тема вывода своих данных в node.tpl так и включение регионов прямо в ноде много раз разжевана
Решение найдено, поправил текст.