Ecshop バックエンドに新しい機能と権限設定を追加するにはどうすればよいですか?この記事では主に、Ecshop バックエンドでの新しい機能列の追加と管理権限設定について紹介します。必要な友人は参照してください。お役に立てれば幸いです。
1. メニュー項目を追加します
/admin/includes/inc_menu.php
ファイル (背景フレームの左側のメニュー) を開き、次のように最後に行を追加します:
$modules['17_other_menu']['sns_list'] = 'sns_list.php?act=list';
ecshop にはデフォルトの第 1 レベルのメニュー項目が 16 個あります。したがって、ここでの例は 17 から始まります。もちろん、このキーは任意に選択できます。index.php ファイルは、ksort を使用してメニューを並べ替えます。 「17_other_menu」は第 1 階層のメニューを表し、「sns_list」は第 2 階層のメニューを表します。等号の後の値は、メニュー列によって開かれるページのリンクを示します。
2. メニュー言語を設定します
/ languages/zh_cn/admin/common.php ファイルを開き、言語を追加します
$_LANG['17_other_menu'] = '其它设置'; $_LANG['sns_list'] = 'SNS管理';
このとき、管理者 (管理者ユーザー) としてバックグラウンドでログインします。新しいメニュー項目が追加されたことがわかります。管理者権限が「すべて」なので。 ECSHOP モールのサプライヤーや他の管理者 (バックエンドにログインできる管理者によって作成された他のアカウント) など、バックエンドに複数の管理者がいる場合、それらの管理者にも新しいデータを表示する権限を与えたい場合は、追加されたメニューでは、列に管理者権限を割り当てる必要があります。
3. 権限リストに新しいメニューを追加します
/ languages/zh_cn/admin/priv_action.php ファイルを開き、「権限管理の第 1 レベルのグループ化」コメント行の下に次のコードを追加します
$_LANG['other_manager'] = '其它设置';
ここで、「other_manager」は、この第 1 レベルの列の権限名であり、列名「17_other_menu」と一致しています。または、任意の名前を選択できます。ここで違いを示すために、メニュー名は同じではありません。级 次に、2 番目のレベルの列「SNS_LIST」の権限名を追加します。このファイルの最後に追加するだけです
//其它管理 $_LANG['sns_list'] = 'SNS管理';
ここでの権限名は、セカンダリメニュー名と同じです。これらの2つの項目は今どこにありますか
4番目のメニューと第2レベルのメニューの許可を関連付けますデータベースを開きます{pre} _admin_actionテーブル、追加2 行のデータ。以下のスクリーンショット
に示すように、データの最初の列は action_id で、これはテーブルの自動インクリメント主キーです。列 2 のデータはparent_id で、上位の action_id から取得されます。列 3 のデータは、手順 3 で定義した権限名 (キー) です。この場合、2 つの権限はリンクされています。この時点で、バックグラウンドで「管理者リスト」を開き、「権限の割り当て」アイコンをクリックすると、手順 3 で表示された権限が表示されます。バックグラウンド ユーザーを使用して [送信] をオンにすると、ユーザーはログイン後に新しいメニュー項目を表示できるようになります。
mysql ステートメント:
INSERT INTO .`admin_action` ( `action_id` , `parent_id` , `action_code` , `relevance` ) VALUES ( NULL , '6', 'shipment_view', '' );
ECSHOP の非推奨: preg_replace() エラーの解決策
ECSHOP で検証コードの画像が表示されない問題の解決方法
以上がEcshopバックエンドでの新機能の追加方法と権限設定について詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。