据我了解,我的问题是我(更确切地说,我的客户是)运行旧版本的 Drupal,特别是 Core 6.26 如果您对任何其他规格感到好奇,我很乐意透露。
有了这个,我用下面的菜单钩子做了一个新模块。
function checkin_menu(){
$items = array();
$items['checkin'] = array(
'title' => 'Checkin'
,'type' => MENU_CALLBACK
,'access arguments' => array('checkin')
,'page callback' => 'checkin'
);
}
权限完全符合我的预期。有一个名为“Checkin”的部分与 .info 文件中指定的模块名称相同,还有一个项目授予“checkin”权限
后来我将模块扩展为具有两条不同的路径。第二个应该仅供管理员使用。
function checkin_menu(){
$items = array();
$items['checkin'] = array(
'title' => 'Checkin'
,'type' => MENU_CALLBACK
,'access arguments' => array('create a checkin')
,'page callback' => 'checkin'
);
$items['checkin_admin'] = array(
'title' => 'Checkin Admin'
,'type' => MENU_CALLBACK
,'access arguments' => array('view all checkins')
,'page callback' => 'device_checkin_page'
);
return $items;
}
令我惊讶的是,“创建签到”或“查看所有签到”都没有出现。我仍然在权限页面上显示原始的“签到”。这几天我一直在寻找答案。帮助一个人?