0

openacart 管理者の 3 つの顧客グループを追加しました。

  1. オーナー
  2. 売り手
  3. ゲスト

この顧客がログインするときに私が探しているもの、各グループの顧客が異なるページにリダイレクトしたい...例:

所有者のログインの場合- (ownerpage.php) にリダイレクトします

販売者ログインの場合- (sellerpage.php) にリダイレクト

ゲストログインの場合- (guestpage.php) にリダイレクト

そして、管理者ユーザー権限のようなこれらのグループ カスタマーにもユーザー ページ権限を与えます... 何か考えはありますか? 利用可能な拡張機能はありますか、それとも自己コーディングを行う必要がありますか...???

ありがとう...

4

2 に答える 2

2

これらのページは情報ページですか? とにかく、catalog/controller/account/account.php でリダイレクトを設定できます

(例では Opencart 1.5.4.1 を使用)

この行の前:

$this->data['heading_title'] = $this->language->get('heading_title');

追加:

$id = $this->customer->getCustomerGroupId();
   if ($id == 1){
  $this->redirect($this->url->link('custom_page1', '', 'SSL'));
   }
   if ($id == 2){
  $this->redirect($this->url->link('custom_page2', '', 'SSL'));
   }
....

ページのアクセス許可の意味がわかりません。質問を修正して、より明確にすることができます。

[編集: 2013-01-23]

特定の情報ページへのアクセスを制限するには、要求された information_id と現在のユーザー グループを確認してから、カスタム コンテンツを出力します。

catalog/controller/information/information.php で 62 行目を見つけます。

            $this->response->setOutput($this->render());
    } else {
    ......

前に追加:

$id = $this->customer->getCustomerGroupId();
        if ($id == 1 && $information_id == 7){
            $this->data['heading_title'] = 'Not allowed.';
            $this->data['description'] = 'You are not allowed to view this page';
        }

必要に応じて条件を変更します。もちろん、information_idチェックを削除するだけで、他のコントローラーでも同じことができます。もちろん、カスタム メッセージを表示する代わりに、ユーザーをホームページなどにリダイレクトしたい場合もあります。しかし、これはよりエレガントで、ユーザーにとって煩わしくないものだと思います。お役に立てれば。

于 2013-01-21T10:25:54.103 に答える
0

現在、最新バージョンにはこのオプションがあります(2.0.2でこれを見つけました):

$groupid = $this->user->getGroupId();

これが誰かに役立つことを願っています。

于 2015-06-14T12:04:10.283 に答える