在我的一个joomla 2.5网站上,我使用的是社区建设者注册表。当用户在电子邮件中点击确认链接完成注册时,该用户不会被分配到k2用户组。
我在k2中设置了k2用户组parameters->advanced setting->Select the default K2 User Group for new registrations
下拉列表,以便将新注册的用户分配给该组。
但它不起作用。当我在谷歌上搜索解决方案时,我启用了所有需要的插件
欢迎专家提出任何解决方案和建议。
我在搜索类似问题时遇到了这个问题:gavick的facebook登录没有分配k2用户组。我怀疑解决方案是一样的。
编辑:/插件/用户/k2/k2.php
在函数"onLogiUser"中替换:
// Get the user id
$db = JFactory::getDBO();
$db->setQuery("SELECT id FROM #__users WHERE username = ".$db->Quote($user['username']));
$id = $db->loadResult();
带有:
// Get the user id
$db = JFactory::getDBO();
$db->setQuery("SELECT id FROM #__users WHERE username = ".$db->Quote($user['username']));
$id = $db->loadResult();
$db->setQuery("SELECT username FROM #__users WHERE username = ".$db->Quote($user['username']));
$mytempusername = $db->loadResult();
并替换:
$row->set('userID', $id);
$row->set('userName', $mytempusername);
$row->set('group', $params->get('K2UserGroup', 1));
带有:
$row->set('userID', $id);
//$row->set('userName', $user['fullname']);
$row->set('userName', $mytempusername);
$row->set('group', $params->get('K2UserGroup', 1));
完美工作只有k2 2.6.6中用于重新部署的正确代码才是
$row->set('userID', $tmp->id);
$row->set('userName', $tmp->name);
$row->set('group', $params->get('K2UserGroup', 1));