Drupal 7 hook_权限和控制访问[如果用户未登录,如何重定向到登录页面]
如何限制“什么”可以访问页面。我不太了解如何使用Drupal 7 hook_权限和控制访问[如果用户未登录,如何重定向到登录页面],drupal-7,drupal-modules,Drupal 7,Drupal Modules,如何限制“什么”可以访问页面。我不太了解如何使用hook\u permission()根据角色设置用户权限,以控制对hook\u菜单()项的访问。但是,如果我有一个仅由系统本身使用的hook\u menu()项,该怎么办?例如,假设我在自定义模块中有一个注册页面:module/register-任何人都可以访问该页面。然后,假设我有另一个网页,这是只为管理员。因此,我在hook_menu()中注册了另一项,称之为module/register/reg_user_details——我不希望任何人能
hook\u permission()
根据角色设置用户权限,以控制对hook\u菜单()
项的访问。但是,如果我有一个仅由系统本身使用的hook\u menu()
项,该怎么办?例如,假设我在自定义模块中有一个注册页面:module/register
-任何人都可以访问该页面。然后,假设我有另一个网页,这是只为管理员。因此,我在hook_menu()中注册了另一项,称之为module/register/reg_user_details
——我不希望任何人能够浏览到module/register/reg_user_details
相反,我希望页面仅在用户登录时可见,我已经创建了hook\u权限
/**
* Implements hook_menu()
*
*/
function video_subtitles_menu() {
$items = array();
$items['video_subtitles/upload'] = array( //this creates a URL that will call this form at "video_subtitles_test/upload"
'title' => 'Upload Subtitle', //page title
'description' => 'Uploading subtitle for videos',
'page callback' => 'drupal_get_form', //this is the function that will be called when the page is accessed. for a form, drupal_get_form need to be used
'page arguments' => array('video_upload_subtitles_form'), //Name of the Uplaod Form
'access callback' => 'user_access',
'access arguments' => array('administer video_subtitles module'),
);
$items['player/video_subtitle_status'] = array(
'page callback' => 'video_subtitle_status',
'access callback' => 'user_access',
'access arguments' => array('administer video_subtitles status'),
);
return $items;
}
/**
* Implements hook_permission.
*/
function video_subtitles_permission() {
return array(
'administer video_subtitles module' => array(
'title' => t('Administer video_subtitles module'),
'description' => t('Access the video_subtitles upload module Page'),
),
'administer video_subtitles status' => array(
'title' => t('Administer video_subtitles module status'),
'description' => t('Access the video_subtitles module status Page'),
));
}
所以除非用户登录,否则用户无法访问我的页面,但是
当用户没有以管理员身份登录时,我需要的应该重定向到登录页面,如果他成功登录,应该重定向到我的页面
d-7/示例/我的模块
d-7/示例/my module
页面移动到drupal.stackexchange.com!!!已移动:)此问题似乎与主题无关,因为它属于