Joomla 用の小さなユーザー プラグインを作成しました。ユーザーのグループに応じて、ログイン時のリターン URL を変更する必要があります。しかし、それは呼び出されていません。私は何を間違っていますか?
class plgUserPluginName extends JPlugin
{
/**
* This method should handle any login logic and report back to the subject
*
* @param array $user Holds the user data
* @param array $options Array holding options (remember, autoregister, group)
*
* @return boolean True on success
* @since 1.5
*/
public function onUserLogin($user, $options = array())
{
$user = JFactory::getUser();
$db = JFactory::getDBO();
$db->setQuery(
'SELECT link_id FROM '.$db->quoteName('#__mt_links') .
' WHERE '.$db->quoteName('user_id').' = '.$db->quote($user->id)
);
$link_id = $db->loadResult();
if(!$link_id){
$db->setQuery(
'SELECT group_id FROM '.$db->quoteName('#__user_usergroup_map') .
' WHERE '.$db->quoteName('user_id').' = '.$db->quote($user->id)
);
$group_id = $db->loadResult();
if($group_id == somegroupid) $options['return'] = 'abc';
elseif($group_id == someothergroupid) $options['return'] = 'xyz';
}
return true;
}
}
私のxmlは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin" group="user">
<name>plg_user_pluginname</name>
<version>1.0.0</version>
<description>PLG_USER_PLUGINNAME_XML_DESCRIPTION</description>
<files>
<filename plugin="pluginname">pluginname.php</filename>
<filename>index.html</filename>
</files>
<languages>
<language tag="en-GB">en-GB.plg_user_pluginname.ini</language>
<language tag="en-GB">en-GB.plg_user_pluginname.sys.ini</language>
</languages>
<config>
</config>
</extension>