Can someone explain "access arguments" in Drupal? Trust me I have tried Googling it but I am just not getting a clear grasp.
in /admin/user/permissions you will see lots of access options. they come from drupal modules, and lets the site administrator distribute specific permissions to user roles (drupal provides 'anonymous' and 'registered' roles by default). modules declare them through hook_perm and they are as easy to use as:
function mymodulename_perm {
return array('use custom feature', 'use the other custom feature');
}
and they will show up there, ready to be used. now, in any function of yours, you can check for user access through user_access which is just as easy to use:
if (user_access('use custom feature')) {
//do something
}
Access arguments are the arguments passed to the function that checks if a user has access to a menu.
Given a menu callback definition as the following
$items['blog/feed'] = array(
'title' => 'RSS feed',
'page callback' => 'blog_feed',
'access callback' => 'custom_module_blog_access',
'access arguments' => array('feed'),
'type' => MENU_CALLBACK,
);
The function custom_module_blog_access()
will be called as custom_module_blog_access('feed')
. If the function returns TRUE
, then the user will be given access to the menu callback; differently, the user will see the error 403 page (access denied).
Normally, the access callback is not defined, and by default Drupal will use user_access()
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With