【发布时间】:2011-01-13 22:26:01
【问题描述】:
我想在
- 对
node.tpl.php中的节点字段做一些处理 - 将其保存到变量中
- 并显示在节点之后加载的块中(在同一页面上)。
如何将变量从节点传递到块?
【问题讨论】:
标签: drupal drupal-theming drupal-7
我想在
node.tpl.php中的节点字段做一些处理如何将变量从节点传递到块?
【问题讨论】:
标签: drupal drupal-theming drupal-7
由于您正在运行 Drupal 7,您可以从自定义模块或主题访问新的 hook_page_alter() 函数。通过实现这一点,您可以轻松地将部分主要内容区域(例如,节点)移动到任意数量的不同块中。您需要使用show()、hide() 和render() 函数来正确隐藏内容。
或者,在 node.tpl.php 模板中使用 show() 和 hide() 应该可以正确隐藏元素,然后您可以使用 menu_get_object() 函数从块中获取节点对象。
hook_page_alter() here 上通常有视频可用,但该网站目前已关闭。
【讨论】:
对节点字段做一些处理
node.tpl.php
一个纯粹主义者会说你不应该在那里做。 hook_node_load() 可用于字段的处理。
然后你可以在你的块中使用menu_get_item() 来获取$node 对象并访问你添加到它的任何值。
【讨论】: