drupal 7:页面管理器/面板和 hook_node_view

Posted

技术标签:

【中文标题】drupal 7:页面管理器/面板和 hook_node_view【英文标题】:drupal 7: page manager/panels and hook_node_view 【发布时间】:2011-05-19 12:38:30 【问题描述】:

我正在尝试在查看特定类型的节点时运行一些自定义代码。只是我用 nodeapi 实现的一些代码。这在 Drupal 7 中运行良好,但由于我在 ctools 页面管理器中覆盖了 node_view 页面,因此它不会触发。

function mymodule_node_view($node, $view_mode, $langcode) 
  if($node->type=='webform') 
    drupal_set_message('test');
    // actual code will go here 
  

是否可以使用不同的核心功能?还是我没有找到的 ctools 页面管理器挂钩?

我可能可以在某处的预处理主题覆盖中执行一些代码,但感觉不是最好的做法。

【问题讨论】:

【参考方案1】:

除了使用预处理函数THEME_preprocess_panels_pane(),您还可以使用hook_ctools_render_alter()

查看以下用法示例:http://drupal.org/node/1233570#comment-4808224

补充阅读:

http://drupalcontrib.org/api/drupal/contributions!ctools!ctools.api.php/function/hook_ctools_render_alter/7 http://drupal.org/node/1359630

【讨论】:

以上是关于drupal 7:页面管理器/面板和 hook_node_view的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 7管理面板中的问题

如何在没有面板的Views Drupal 7中将组ID作为上下文

Drupal 7 Blocks不考虑重量

带视图和面板的 Drupal 图像显示

Drupal Page Manager:根据主要内容字段标准加载辅助内容

Drupal 7 查看数据重复