如何在 hook_exit 中打印 $node
How to print $node inside hook_exit
我有一个要求,我想根据节点是否属于 'news' 类型插入几个值,但是当我尝试使用以下代码执行此操作时,它似乎不起作用,有人可以帮忙吗使用代码,
function hook_exit() {
if (isset($node) && $node->type == 'event') {
print_r('This is an event');
}
}
根据 Drupal 7 API Reference for hook_exit:
This hook MUST NOT print anything because by the time it runs the response is already sent to the browser.
如果您想在 Drupal 从数据库加载节点时将信息添加到节点,请尝试使用 hook_node_load。例如:
function yourmodule_node_load($nodes, $types)
{
foreach ($nodes as $node)
{
// To add or override a node attribute
$node->myvar = "Value";
// To print some data from the node
print_r($node->title);
}
}
为了满足我获取类型的要求,我所做的是检查 url,获取第二个参数并将其作为参数传递给 node_load 函数。这有点棘手,但它为我完成了工作。
function tru_statistics_exit() {
if ((arg(0) == 'node') && is_numeric(arg(1)) && arg(2) == '') {
$nid = arg(1);
$node = node_load($nid);
if ($node->type == 'event') {
get_details_visitor();
}
}
}
希望有人会觉得这有用
我有一个要求,我想根据节点是否属于 'news' 类型插入几个值,但是当我尝试使用以下代码执行此操作时,它似乎不起作用,有人可以帮忙吗使用代码,
function hook_exit() {
if (isset($node) && $node->type == 'event') {
print_r('This is an event');
}
}
根据 Drupal 7 API Reference for hook_exit:
This hook MUST NOT print anything because by the time it runs the response is already sent to the browser.
如果您想在 Drupal 从数据库加载节点时将信息添加到节点,请尝试使用 hook_node_load。例如:
function yourmodule_node_load($nodes, $types)
{
foreach ($nodes as $node)
{
// To add or override a node attribute
$node->myvar = "Value";
// To print some data from the node
print_r($node->title);
}
}
为了满足我获取类型的要求,我所做的是检查 url,获取第二个参数并将其作为参数传递给 node_load 函数。这有点棘手,但它为我完成了工作。
function tru_statistics_exit() {
if ((arg(0) == 'node') && is_numeric(arg(1)) && arg(2) == '') {
$nid = arg(1);
$node = node_load($nid);
if ($node->type == 'event') {
get_details_visitor();
}
}
}
希望有人会觉得这有用