在我解释一些背景知识的同时,请耐心等待这个 Drupal API 新手!
当我的用户单击自定义节点创建链接时,我一直在尝试使用下面的代码创建 2 个单独的响应。默认情况下,会打开一个页面,允许用户完成创建节点的常规步骤。我的模块所做的是检查用户是否具有特定权限,并允许他们继续创建节点或抛出拒绝访问页面。
function mymodule_menu_alter(&$items) {
$items["node/add/page/%"]['access callback'] = 'mymodule_access_callback';
}
function mymodule_access_callback(){
if( user_access('open sesame') ){
drupal_set_message("successfully intecepting new node creation");
return true;
}
return false;
}
节点/添加/页面被成功阻止,但在这两种情况下都是如此。if 语句确定用户是否具有特定权限,并在其中添加了 return true 导致以下错误:
致命错误:require_once() [function.require]:在 /var/www/vhosts/mysite.co.uk/httpdocs/includes/menu 中打开所需的 '/node.pages.inc' (include_path='.:') 失败.inc 在第 347 行
作为一个新手,我不确定我需要做什么才能避免正确用户的访问被拒绝页面。