Drupal:从节点而不是url获取块视图的参数?

Posted

技术标签:

【中文标题】Drupal:从节点而不是url获取块视图的参数?【英文标题】:Drupal: grab argument from node instead of url for block view? 【发布时间】:2011-07-03 10:16:03 【问题描述】:

我为一个节点和一个块设置了一些术语,我想从页面中获取参数,但页面是这样的:

http://site.com/node/22

但是页面上的条款是这样的:

术语1

如何让块获取 term1 arg 并显示具有 term1 的其他节点?

【问题讨论】:

【参考方案1】:

您不能只使用 php 从页面中获取数据(没有某种复杂的 html 树解析)。相反,我建议从节点本身获取术语数据。考虑以下几点:

$node = node_load(arg(1));
// If you're on Drupal 6:
$terms = taxonomy_node_get_terms($node);
// If Drupal 7, your terms should be stored as a term reference field on the node.
$terms = field_get_items('node', $node, 'YOUR TERM REFERENCE FIELD');

foreach ($terms as $term) 
  // Do stuff here.

【讨论】:

以上是关于Drupal:从节点而不是url获取块视图的参数?的主要内容,如果未能解决你的问题,请参考以下文章

在 drupal 视图中使用来自字段的链接包装输出

在 Drupal Views 参数中,如何获取节点队列中的节点总数?

使用ajax将参数发送到drupal视图

如何让drupal视图显示基于节点的动态内容

Drupal 8 如何制作仅显示与当前节点相关的分类术语的视图

如何在 Drupal 7 中的 URL 中获取视图(上下文过滤器)中的结果