我正在编写我在Joomla 1.7中开发的Joomla 2.5组件。我一直在使用这样的代码:
$user = JFactory::getUser();
$groups = $user->get('groups');
$ groups数组将包含一个以组名作为索引的ID列表。 Joomla 2.5似乎已经放弃了此功能。我一直无法找出如何在不直接查询数据库的情况下获取组名。有什么方法可以获取用户所属的组列表,而不必诉诸于数据库?
最佳答案
我在下面生成的代码获取用户所属的所有组的名称,并将它们存储在由换行符分隔的变量 $ groupNames 中:
foreach ($user->groups as $groupId => $value){
$db = JFactory::getDbo();
$db->setQuery(
'SELECT `title`' .
' FROM `#__usergroups`' .
' WHERE `id` = '. (int) $groupId
);
$groupNames .= $db->loadResult();
$groupNames .= '<br/>';
}
print $groupNames;
从技术上讲,它是通过Joomla API来查询数据库的。这对Joomla 2.5来说对我来说效果很好。
关于joomla - 如何在Joomla 2.5中获取用户组名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10468115/