我正在使用hook_node_view来显示节点的内容而不是另一个节点的内容。
function mymodule_node_view($node, $view_mode, $langcode) {
if ($node->nid == 89) {
$room = node_load(90);
$node->content['mymodule_additional_content'] = node_view($room);
}
}
节点90的模板显示“ROOM”文本(用于测试)。
但这里显示的不是“ROOM”:
房间
LanguageFrançais
Gabarit:
页/ chambres.tpl.php
有什么想法吗?
编辑:如果我用以下代码替换第5行:
$node->content = array('mymodule_additional_content' => node_view($room));
因此删除之前添加到$ node->内容的所有其他内容,我得到了结果:
房间
LanguageFrançais
这意味着在调用钩子后添加“LanguageFrançais”。但在哪里?
答案 0 :(得分:0)
@Clive的回答:
它将是另一个模块,它实现了在您之后运行的相同钩子,因此您的更改将被添加到。尝试按照如何更新模块的权重指南,使模块的钩子跟随任何其他人运行,这应该可以解决问题。