Ecshop:後臺新增新功能欄目以及管理許可權設定

神馬和浮雲發表於2014-08-20

一、新增選單項

        開啟 /admin/includes/inc_menu.php檔案(後臺框架左邊選單),在最後新增一行如下:

        $modules['17_other_menu']['sns_list'] = 'sns_list.php?act=list';

        ecshop預設一級選單項有16項,所裡這裡的例子從17開始。當然這個key可以隨便取的,index.php檔案中對選單用 了ksort排序。“17_other_menu” 表示一級選單,“sns_list”表示二級選單。等號後面的值表示該選單欄目開啟的頁面連結。

二、配置選單語言

        開啟 /languages/zh_cn/admin/common.php檔案,新增語言

        $_LANG['17_other_menu'] = '其它設定';

        $_LANG['sns_list'] = 'SNS管理';

        這時候,用管理員身份(admin使用者)登入後臺,便可看到新新增的選單項了。因為admin的許可權是“all”。如果後臺有多個 管理員,比如ecshop商城的供貨商們,或者其它管理人員(由admin建立的其它可登陸後臺的賬戶),如果想讓他們也擁有新新增選單的檢視權利,則必 須為他們分配該欄目的管理許可權。

三、把新選單加入許可權列表

        開啟 /languages/zh_cn/admin/priv_action.php檔案,在“許可權管理的一級分組”註釋行下面新增如下程式碼

        $_LANG['other_manager'] = '其它設定';

        這裡的“other_manager”是該一級欄目的許可權名稱,這裡和欄目名稱“17_other_menu”保持一致,也可以隨便取個名。這裡以示區別,就沒有和選單名一樣。

        然後,新增二級欄目“sns_list”的許可權名稱。在本檔案的最後新增即可

        //其它管理

        $_LANG['sns_list'] = 'SNS管理';

        這裡這個許可權名稱和二級選單名是一致的。這兩項現在在哪裡呢?如下圖

四、把一級選單和二級選單的許可權關聯起來

        Ecshop:後臺新增新欄目開啟資料庫,看到{pre}_admin_action表,新增兩行資料。如下圖

截圖中第1列資料是action_id,是該表的自增主鍵。第2列資料是parent_id,來自上級的action_id。第3列數 據就是step3中定義的許可權名(鍵)。這樣的話,兩種許可權就聯絡起來了。到這裡,開啟後臺“管理員列表”,點選“分派許可權”的圖示,便可以看到 step3示圖所示許可權了。用某後臺使用者勾選提交,該使用者登陸後就能看到新增的選單項了。\

mysql語句:

INSERT INTO .`admin_action` (  `action_id` ,  `parent_id` ,  `action_code` ,  `relevance`  )  VALUES (  NULL , '6', 'shipment_view', ''  );

相關文章