動作確認はEC-CUBE2.13.2。結構古いけど。
例えば一部のメンバーは、商品管理メニューしか操作できないようにしたい時とか。
-
- まず「システム設定」→「マスターデータ設定」から「mtb_authority」を選択。
- 「追加のデータ」欄に、IDを指定(例えば2)し、値に権限名(例えば「商品管理者」)を入力。→「この内容で登録する」
- 「システム設定」→「マスターデータ設定」から「mtb_permission」を選択。
- 「基本情報管理」以下にアクセスできなくする場合、「追加のデータ」欄に、ID「/admin/basis/」、値「1」を設定。(この値が、ログインしたメンバーのID以下ならアクセス可能になる。ここを「2」にすれば追加した商品管理者もアクセス可能になる。)
- 他にもアクセス不可にしたいページがあれば、同様に「mtb_permission」に追加する。
- 「/data/class/SC_Session.php」を編集。
1234// 70行目あたりを修正 --------------------// 対象フォルダ以下の全てのファイルをアクセス出来ないように設定//$admin_path = strtolower(preg_replace('/\/+/', '/', $_SERVER['SCRIPT_NAME']));$admin_path = strtolower(preg_replace('!/[^/]*$!', '/', $_SERVER['SCRIPT_NAME'])); - 「/data/class/pages/error/LC_Page_Error_DispError.php」を編集。
12345// 92行目あたりに以下を追加 --------------------case AUTH_ERROR:$this->tpl_error="このファイルにはアクセス権限がありません。<br />もう一度ご確認のうえ、再度ログインしてください。";$this->return_top = false;break; - 「/data/Smarty/templates/admin/login_error.tpl」を編集。
12345678// 40行目あたりを修正 --------------------<li><!--{if $return_top}--><a class="btn-action" href="<!--{$smarty.const.ADMIN_LOGIN_URLPATH}-->"><span class="btn-prev">ログインページに戻る</span></a><!--{else}--><a class="btn-action" href="<!--{$smarty.server.HTTP_REFERER}-->"><span class="btn-prev">戻る</span></a><!--{/if}--></li>
以上。
- さらにメニューを非表示にしたい場合は、こちらなどを参照。
参考URL)