是否可以为节点访问定义新操作?
据我所知,hook_access()
中使用的节点的操作是:
创建
删除
更新
查看
我有自定义内容类型,我需要其他操作,例如“建议”。
答案 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。