我正在使用Joomla的社区生成器模块,我在源代码中看到了onAfterUserRegistration
事件被触发。所以我尝试为这个事件开发一个插件。这就是我所做的:
<?php
defined('_JEXEC') or die( 'Restricted access' );
jimport('joomla.plugin.plugin');
class plgUserRegistration extends JPlugin
{
function plgUserRegistration($subject, $config)
{
parent::__construct($subject, $config);
}
function onAfterUserRegistration()
{
//Do some stuff here !
}
}
但我的代码永远不会被调用,我无法弄清楚为什么,如果有人作为任何线索!
答案 0 :(得分:2)
有点晚了但也许它可以帮助别人。您必须创建一个CB插件而不是Joomla插件。 您可以参考CB Plugin Framework API文档。
在你的php文件中,你必须有类似的东西:
$_PLUGINS->registerFunction( 'onBeforeUserRegistration', 'pluginExampleBeforeUserRegistration' );
/**
* Example registration verify user method
* Method is called before user data is stored in the database
* @param array holds the core mambo user data
* @param array holds the community builder user data
* @param boolean false
*/
function pluginExampleBeforeUserRegistration(&$user,&$cbUser) {
global $_POST, $_PLUGINS;
if ($_POST['username'] == $_POST['password']) {
$_PLUGINS->raiseError(0);
$_PLUGINS->_setErrorMSG("Password has to be different from username!");
}
return true;
}
希望这会有所帮助
答案 1 :(得分:1)
以下是一些建议: