来自nid的Drupal打印节点

时间:2010-11-19 02:23:39

标签: drupal drupal-6

我有一个节点ID。在我的代码中,我想使用节点的标准模板将此节点输出到屏幕。如何将节点打印到屏幕上?

3 个答案:

答案 0 :(得分:10)

print_r()可以正常工作,如果你只想查看对象结构(并使用devel模块,通过krumo传递该输出的dpm()函数就更好了。)

要查看节点的呈现版本,您应该调用Drupal API函数,该函数用于获取节点对象并运行用于生成节点输出的所有处理和主题例程。在这种情况下,它是node_view()

node_view(node_load(###));

答案 1 :(得分:4)

由于您要使用“节点的标准模板”,我建议您加载节点,然后使用node_view命令。

我个人认为这是很好的做法,我会在我的所有网站上不断使用它。这使我的主题保持在默认的drupal节点主题文件中(node-node_type.tpl.php)

示例:

$nid = 123;
$node = node_load($nid);
$node_tpl_output = node_view($node);
print $node_tpl_output; // the rendering of node-node_type.tpl.php

*(请注意,node_view的第二个参数是使用预告片的布尔值,它为您提供了更多控制权,允许您使用node-node_type-teaser.tpl.php)*

希望显示节点内容以进行开发,毫无疑问您应该使用“Devel" module”将以下内容用于任何数组,对象,var等:

dpm($node);

此函数显示所有节点信息,并使用Krumo库轻松导航它,这样就可以调试像$ views这样的疯狂对象(通过print_r是不可能的)

答案 2 :(得分:1)

<?php print_r($node); ?>

将打印整个节点。

点击此处了解更多详情:http://drupal.org/node/11816