2
我目前正在使用Drupal 7,並且正在編寫自定義代碼,以便具有特定權限的用戶(「使用業務儀表板」)應該在主菜單中看到一個菜單項。問題是隻有我(管理員)可以看到這個菜單項。我已經能夠在權限頁面上創建一個自定義權限,並設置它爲「admin」和我的用戶特定角色提供訪問權限,並實現了以下代碼(從不知道位於模塊名稱中的「xxxxxx」我寧願保持匿名的了,但只知道他們都在發生的機讀模塊名稱):Drupal - 通過自定義權限切換菜單項目的可見性
function xxxxxx_menu(){
$items = array();
$items['xxxxxxx'] = array(
'title' => 'Business Owner Dashboard',
'page callback' => '_xxxxxx_page',
'access arguments' => array('use business dashboard'),
'type' => MENU_NORMAL_ITEM,
);
return $items;
}
function xxxxxx_permission(){
return array(
'use business dashboard' => array(
'title' => t('Have access to business dashboard'),
'description' => t('Allow user to send out SMS messages via database query forms'),
),
);
}
當我登錄爲具有的特定角色的權限在我的測試用戶「使用業務儀表板」我看不到菜單項。我確信這非常簡單,但我一直在Google上搜索,並在代碼上打了幾個小時。任何幫助將不勝感激!
奇怪的是,我所要做的只是將權限機器可讀的名稱更改爲「use_business_dashboard」並清除緩存並且它工作正常! – Eric
選擇一個答案! – emc