我正在使用Drupal
。我有一个模块将表单加载到节点上。在我的模块中,我使用了
if ( arg(0) == 'node' && is_numeric(arg(1)) ) {$node = arg(1);}
得到了每张表格nid
。
现在我创建了一个显示完整节点但我的节点未显示nid
的视图。
我尝试使用像
这样的东西$node = node_load($rows->nid);
但它没有返回任何东西。
基本上我有一个显示大约10个节点的视图页面,我试图在视图中找到每个节点的nid
。
答案 0 :(得分:1)
您可以使用视图自定义字段模块,该模块可让您访问每行的$ data对象。其中包括$data->nid
的nid。您还可以views-row.tpl.php
访问它。如果你有devel模块(这是必须的,真的),你可以使用dsm(get_available_vars());
来打印该模板可用的所有变量,或只是dsm($data);
来漂亮地打印数据视图中的对象自定义字段(dsm()
使用非常方便的Krumo。)
答案 1 :(得分:0)
if ( arg(0) == 'node' && is_numeric(arg(1)) ) {$node = arg(1);}
此代码仅在用户位于节点页面上时才有效。路径是否别名并不重要。 所以在视图中,它不起作用。
如果要构建显示节点的视图,可以添加node:id字段以获取该行所属节点的节点ID。不需要使用Views Custom Filed(或者如果你使用的是Drupal 7上的视图PHP模块)我相信。
如果您尝试获取引用的View的节点ID,请首先通过节点引用字段向其他节点添加关系。