web-dev-qa-db-ja.com

ログイン後に管理ユーザーを特定のコンポーネントにリダイレクトすることはできますか?

質問に追加するほど多くはありません。管理者のバックエンドにログインした後、特定のユーザーグループを特定の領域にリダイレクトしようとしていますが、それが可能かどうかはわかりません。

やや別の目標ですが、管理メニューも非表示にしたいと思います。

6
Merlin

リダイレクトを実行する小さなプラグインを作成できます。これは私がすぐにモックアップしたものです:

class plgSystemMYPLUGIN extends JPlugin
{

    public function onUserAfterLogin()
    {
        $app = JFactory::getApplication();

        if ($app->isAdmin()) 
        {
            $user   = JFactory::getUser();
            $groups = $user->get('groups');

            $groups_to_redirect = array('13', '10');

            if (in_array($groups[0], $groups_to_redirect))
            {
                $url = JRoute::_('index.php?option=com_hellowworld');
                $app->redirect($url);
            }           
        }
    }

}

10および13ユーザーグループIDの例として、必要に応じて変更する必要があります。

また、私はこれをテストしていませんが、正しい方向を示すことを願っています。

10
Lodder

その拡張はどうですか?以前にユーザーを指定した方向にリダイレクトする必要があるときに使用していました。

http://extensions.joomla.org/extensions/extension/access-a-security/site-access/redirect-on-login

1
Si Thu

3.xのJust Shortcutメソッド

Joomla plugins\authentication\cookie\cookie.phpのオープンパス

関数onUserAfterLogin($ options)では、

        $user   = JFactory::getUser();
        $groups = $user->get('groups');

            if(in_array(10, $groups)) 
            {
             $url = JRoute::_('index.php?option=com_students');
             $this->app->redirect($url);
            } 
0
Satyanarayana