0

カスタム認証プラグインを作成しました。これにより、自分のユーザー テーブルで Joomla にログインできます。したがって、この時点で、システムに対する認証が機能しており、ユーザー オブジェクトが作成されます。ログアウトするまでのすべての情報は、$user = JFactory::getUser(); で確認できます。

私の問題は、ログイン後にメニューが表示されないことです。私のテンプレートが読み込まれていないようです。ユーザー ID を Joomla の登録済みユーザーの 1 つに手動で変更すると (ID のみが変更され、ユーザー オブジェクトの他の値は変更されません)、テンプレートが読み込まれ、メニューが表示されます。

これを機能させるにはどうすればよいですか? 何が欠けているか、または何が間違っていますか?

4

1 に答える 1

0

Joomla の権限システムにより、Joomla は libraries/joomla/access/access.phpin で getAuthorizedViewLevels() と getGroupsByUser() を呼び出し、user_usergroup_map からグループを検索します。

外部ユーザー認証であるため、user_usergroup マッピングはありません。

したがって、回避策を構築しました。ログイン手順中に、一時的に使用するために user_usergroup_map テーブルに user_id を設定する関数をプラグインに追加しました。

ログアウトすると、user_usergroup_map テーブルのエントリが削除されます。

于 2015-01-21T18:36:01.920 に答える