我已经为不同的节点类型设置了具有角色访问权限的站点。 对于一个节点,我必须删除仅一个角色的de访问权限,其他人将保持不变。 因为该站点已经安装了许多模块,所以我更喜欢仅使用钩子函数而不是模块作为nodeaccess或内容访问。 有人可以建议钩子脚本吗?
答案 0 :(得分:1)
这应该可以工作,根据需要调整操作,用户角色和节点类型:
function mymodule_node_access($node, $op, $account) {
if (in_array('the role', $account->roles) && $op == 'view' && $node->type == 'article' && $node->nid == 42) {
return NODE_ACCESS_DENY;
}
}
如果只是针对单个nid,您可以在条件语句中省略$ op和$ node->类型。