Drupal:如何将变量从节点传递到块?

发布于 2024-10-12 08:56:59 字数 161 浏览 5 评论 0 原文

我想对

  1. node.tpl.php 中的节点字段进行一些处理,
  2. 将其保存到变量中
  3. 并显示在节点之后加载的块中(在同一页面上)。

如何将变量从节点传递到块?

I'd like to do in

  1. do some processing of node fields in node.tpl.php
  2. save it to a variable
  3. and display in a block that is loaded after the node (on the same page).

How to pass a variable from a node to a block?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

够运 2024-10-19 08:56:59

由于您运行的是 Drupal 7,因此您可以访问新的 hook_page_alter() 函数,来自自定义模块或主题。通过实现这一点,您可以轻松地将主要内容区域的部分(例如节点)移动到任意数量的不同块中。您需要使用 show()hide() 和 < a href="http://api.drupal.org/api/drupal/includes--common.inc/function/render/7" rel="nofollow">render() 函数可以正确隐藏内容。

或者,在 node.tpl.php 模板中使用 show() 和 hide() 应该正确隐藏元素,然后您可以使用 menu_get_object() 函数。

通常在 hook_page_alter() 此处,但该网站目前已关闭。

Since you're running Drupal 7, you have access to the new hook_page_alter() function, from either a custom module or theme. By implementing this, you can easily move parts of the main content area (eg, the node), into any number of different blocks. You'll want to use the show(), hide() and render() functions to properly hide content.

Alternatively, using show() and hide() from within your node.tpl.php template should properly hide the elements, and then you could grab the node object from your block using the menu_get_object() function.

There is normally a video available on hook_page_alter() here, but the site is down at the moment.

我也只是我 2024-10-19 08:56:59

对节点字段进行一些处理
node.tpl.php

纯粹主义者会说你不应该在那里这样做。 hook_node_load()可用于字段的处理。

然后你可以使用 menu_get_item()在您的块中获取 $node 对象并访问您添加到其中的任何值。

do some processing of node fields in
node.tpl.php

A purist would say that you shouldn't be doing it there. hook_node_load() can be used for processing of fields.

Then you can just use menu_get_item() in your block to get the $node object and access any values you have added to it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文