2017-03-13 1 views
0

フロントページを表示している間にバックエンドで管理者としてログインしていることを1日中検出する方法を見つけようとしています。 (Opencart v 2.3)。私は今日発見されたアドバイスの非..それを行う方法はありますか? Wordpressのis_admin()のような機能があれば素晴らしいと思います。Opencart 2.3のフロントページの管理者を検出

+0

、すべてのユーザーがアクセスの異なるレベルを持つユーザです。 Opencartには、互いに完全に独立した3種類のユーザ(ユーザ、顧客、系列会社)があります。たとえば、コメント権限を持つWPユーザーは、単純な権限変更によって投稿権限にアップグレードできます。 Opencartでは、アカウントはcustomerテーブルに存在することができますが、それは顧客だけです。ユーザーテーブルにはありません。同様に、ユーザーは、サイトを管理するためのアカウントを持つことができますが、製品を購入するアカウントとは異なります。 –

+0

短いバージョン - opencartユーザーとWPユーザーは互いに完全に異なっています。 –

+0

もう一度。質問は:どのようにフロントページ上の管理者を検出するのですか?ポイントに達することができます。 – Chrobry

答えて

1

あなたは同じブラウザにある必要があります。 これで、任意のコントローラにアクセスし、セッションにuser_idが設定されているかどうかを確認するコードを挿入します。 例えば:

if($this->session->data['user_id']){ 
     echo 'Admin is logged in'; 
    }else{ 
     echo 'Admin is not logged in'; 
    } 

別の方法としてユーザオブジェクトを初期化し、isLogged()メソッドでチェック: 移動は、カタログに/制御/共通/ header.phpの

インデックス内部()メソッドは、次のコードを追加しますワードプレスで

$loggeduser = new Cart\User($this->registry); 
    if($loggeduser->isLogged()){ 
     echo "Admin is in"; 
    }else{ 
     echo "Admin not in"; 
    } 

https://webocreation.com/blog/check-admin-logged-front-page-opencart-2-3

+0

素晴らしい!それは第二の方法で働いています。どうもありがとうございました! – Chrobry

+0

しかし、私はまだこのデータをheader.tplの中でどのように使用するのだろうかと思います。私は次のようなことをしようとしていました:[リンク] http://pastebin.com/NbpT1b5Jそしてそれは私に与えられます: 'Admin is not Notice:未定義変数:C:\ wamp64 \ www \ xxx \ catalog \ viewのbigBoss \ theme \ OPC080193_6 \ template \ common \ header.tpl on line 93' – Chrobry

+0

header.phpの中に '$ this-> session-> data ['bigBoss'] = 1;'を追加して、それを ' ?php エコー$ this->セッション - >データ['bigBoss']; \ notchip64 \ www \ itw \ catalog \ view \ theme \ OPC080193_6 \ template \ common \ headerの未定義のプロパティ:Template \ PHP :: $ sessionを参照してください。 tpl on line 96注:C:\ wamp64 \ www \ itw \ catalog \ view \ theme \ OPC080193_6 \ template \ common \ header.tplの非オブジェクトのプロパティを取得しようとしています。96行目 – Chrobry

関連する問題