hook_access()中的新操作

时间:2011-04-20 10:28:30

标签: drupal drupal-permissions

是否可以为节点访问定义新操作?

据我所知,hook_access()中使用的节点的操作是:

  • 创建

  • 删除

  • 更新

  • 查看

我有自定义内容类型,我需要其他操作,例如“建议”。

1 个答案:

答案 0 :(得分:1)

简短回答是NO,因为node_access()负责调用hook_access()does a check on the $op parameter

  

if(!$ node ||!in_array($ op,   数组('view','update','delete',   'create'),TRUE)){       返回FALSE; }

你可以在suggest()函数中向节点对象附加一些额外的信息 - 希望在node_access()之前调用 - 然后在hook_access()中检查这些额外的信息并返回TRUE / FALSE。

另一个选项包括对suggest()动作进行硬编码权限检查,而不会搞乱hook_access。