drupal将node_access挂钩添加到现有模块(OG)

时间:2012-10-31 15:54:24

标签: drupal drupal-6 hook drupal-modules drupal-hooks

请不要问为什么我需要或为什么我这样变态。

我在drupal 6上有一个有机组模块。 我出于某种原因需要将node_access挂钩添加到此模块中。

“og.module”文件中没有预设的node_access挂钩或任何连接到此模块的文件(我已经检查了这个)。 我尝试添加“og_node_access”函数和以下正文:“echo'1111111'; return true;”并且它不会触发任何地方(根本没有回声)。我试图将它添加到og.module文件。

P.S .: 请不要推荐OG的任何访问扩展 - 我已经尝试了很多。我只需要:(伪代码)

    if ($op=='view'){
      if ($node->type == 'xxxx' || $node->type =='yyyyyyyy') {
          SHOW THIS TYPE OF NODES ONLY TO ADMIN(S) OF THE GROUP (OR SITE) AND THE AUTHOR OF THE NODE, NOBODY ELSE (EVEN IN THE SAME GROUP) IS ALLOWED TO SEE IT OR TOUCH IT.
      } else {
        USE DEFAULT RULES (return IGNORE);
      }
    } 

我需要硬编码,因为分类法访问,内容访问和其他“访问”模块无法正常工作(实际上它们根本不起作用)。

P.P.S .: 我知道,OG有点吵,有几种选择,但我只需要以描述的方式完成。

1 个答案:

答案 0 :(得分:0)

所以... node_grants挂钩(我在评论中输错了“node_grants”而不是“access_grants”)解决了我的问题。 不幸的是,我花了太多时间(一整天)谷歌搜索并试图了解有点复杂的drupal补助系统。 无论如何,谢谢你(全部)你的答案(s)