Как программно визуализировать тизер узла, используя слой темы?
Как программно визуализировать тизер узла, используя слой темы?
Ответы:
node_view() является стандартной функцией для рендеринга узлов, например
$node = node_load(1);
$view = node_view($node, 'teaser');
$rendered = drupal_render($view);
Существует nodeтема, определенная модулем узла (in node_theme()), но я никогда не видел, чтобы она использовалась.
$build += array(, у него есть #themeатрибут, который, я предполагаю, говорит Drupal использовать система тем. Поправьте меня если я ошибаюсь. Я только сейчас начинаю «получать» Drupal API :)
theme('node', ...раньше. На самом деле это даже не сработает, потому что он определяет себя как наличие render elementвместо variables.
theme('theme_name', $args)и с помощи так называемыми render elementс. В hook_theme()документах объясняют это очень хорошо, это не 100% интуитивное , но как только вы знаете, это действительно полезно. С помощью node_view()воли никогда не перепускной тему слоя , так что вы должны быть штраф :)