Php 执行节点视图时,如何使用自定义模板文件?
我正在尝试与一个模块集成,该模块使用Php 执行节点视图时,如何使用自定义模板文件?,php,drupal,drupal-7,drupal-theming,Php,Drupal,Drupal 7,Drupal Theming,我正在尝试与一个模块集成,该模块使用drupal_渲染(node_视图($node))以获取渲染节点。我有一个自定义的模板文件node--.tpl.php,在简单查看节点时可以正常工作,但是,当使用node\u视图渲染节点时,不使用模板文件,而是使用模块/节点中的corenode.tpl.php。我还实现了hook\u preprocess\u节点,在这种情况下也不会触发 重新创建此节点的一个简单示例是实现hook\u preprocess\u节点,并包含一条看门狗消息。然后在devel exe
drupal_渲染(node_视图($node))代码>以获取渲染节点。我有一个自定义的模板文件node--.tpl.php
,在简单查看节点时可以正常工作,但是,当使用node\u视图渲染节点时,不使用模板文件,而是使用模块/节点中的corenode.tpl.php
。我还实现了hook\u preprocess\u节点
,在这种情况下也不会触发
重新创建此节点的一个简单示例是实现hook\u preprocess\u节点
,并包含一条看门狗消息。然后在devel execute php中执行以下操作:
$node = node_load(<nid>);
print drupal_render(node_view($node));
$node=node_load();
打印drupal_渲染(节点_视图($node));
任何帮助都将不胜感激。问题是,在另一个模块执行节点视图时,它使用的是管理主题,而不是公共主题
为了消除这个问题,我实现了hook\u theme\u registry\u alter
,并将自定义模板放在自定义模块中。这样,无论选择的主题是什么,都会使用它们