针对自己数据库的 Joomla 自定义身份验证插件 table
Joomla custom authentication plugin against own database table
我创建了一个自定义身份验证插件,它允许我使用我自己的用户 Table 登录 Joomla。所以在这一点上,对系统的身份验证是有效的,一个用户对象将被创建。可以使用 $user = JFactory::getUser();.
查看注销前的所有信息
我的问题是,登录后,我的菜单不会显示。看来,我的模板没有加载。如果我手动将 userid 更改为 Joomla 中的注册用户之一(只会更改 id,不会更改用户对象的其他值),将加载模板并显示菜单。
我需要做什么才能让它发挥作用?缺少了什么,或者我错了什么?
由于 Joomla 权限系统,Joomla 在 libraries/joomla/access/access.phpin 中调用 getAuthorisedViewLevels() 和 getGroupsByUser() 并从 user_usergroup_map.
中查找组
因为是外部用户认证,所以没有user_usergroup映射。
因此我做了一个解决方法。在登录过程中,我在我的插件中添加了一个函数,该函数将 user_usergroup_map table 中的 user_id 设置为临时使用。
如果注销,user_usergroup_map table 中的条目将被删除。
我创建了一个自定义身份验证插件,它允许我使用我自己的用户 Table 登录 Joomla。所以在这一点上,对系统的身份验证是有效的,一个用户对象将被创建。可以使用 $user = JFactory::getUser();.
查看注销前的所有信息我的问题是,登录后,我的菜单不会显示。看来,我的模板没有加载。如果我手动将 userid 更改为 Joomla 中的注册用户之一(只会更改 id,不会更改用户对象的其他值),将加载模板并显示菜单。
我需要做什么才能让它发挥作用?缺少了什么,或者我错了什么?
由于 Joomla 权限系统,Joomla 在 libraries/joomla/access/access.phpin 中调用 getAuthorisedViewLevels() 和 getGroupsByUser() 并从 user_usergroup_map.
中查找组因为是外部用户认证,所以没有user_usergroup映射。
因此我做了一个解决方法。在登录过程中,我在我的插件中添加了一个函数,该函数将 user_usergroup_map table 中的 user_id 设置为临时使用。
如果注销,user_usergroup_map table 中的条目将被删除。