2009-09-23 2 views
0

Я создал блок с использованием представления и хотел бы добавить некоторую информацию к нему, которая не может быть получена из самого представления. Мне нужно написать небольшую функцию, которая запрашивает некоторые дополнительные данные.Drupal: Добавление содержимого в вид

Я думал о том, чтобы поместить эту функцию в MYTHEME_preprocess_node, но когда я положил простые переменные $ test '] =' test ', а затем выполнил тест печати $ в одном из .tpl-файлов, который выводит содержимое блока, ничего не показывает.

Есть ли я на правильном пути?

ответ

0

Вы также можете использовать опцию Theme Info в интерфейсе Views, чтобы идентифицировать шаблоны, нарисованные с помощью Views. Я не уверен, можете ли вы писать функции препроцесса для этих шаблонов, но вы можете создавать шаблоны переопределения, зависящие от конкретного вида, в вашем каталоге «Тема», следуя схемам имен, предложенным в «Информация о теме».

Этот шаблон может содержать SQL-запросы.

+0

Это то, что я сделал. Не очень красиво, но это работает. благодаря – stef

0

Дело в том, что функция preprocess_ привязана к определенному шаблону. Таким образом, страница препроцесса будет генерировать переменные, доступные в файле page.tpl.php, в то время как preprocess_node сделает это для node.tpl.php. Таким образом, вы можете использовать MYTHEME_preprocess, который должен запускаться для всех шаблонов или использовать MYTHEME_preprocess_templatename. Я не уверен точно, как схемы именования соответствуют системе именования шаблонов. Однако в модуле devel есть опция, которая позволяет вам видеть, какие функции препроцесса запускаются на просматриваемой вами странице, что должно помочь вам выяснить, что назвать функцией препроцесса, если у вас возникли проблемы с ее работой.

Смежные вопросы