SmartFAQ 由 SmartFactory 开发(https://www.smartfactory.ca),InBox Solutions 的分支机构(https://www.inboxsolutions.net)

如何在用户资料中显示用户所属的群组
尊敬的网站管理员,请将常见问题解答替换为以下内容,因为 FAQ 显示有误:下面开始:------------------- 这是为了将用户的群组添加到用户信息中,以便在他们的个人资料中显示出来。对于所有成员(不仅仅是管理员)需要知道一个成员是否属于一个特殊群组的项目来说,这是很好的。我从 bluescreen 的一篇帖子中发展了这个黑客解决方案,他做了与第2点类似的事情,但目的不同。很抱歉我找不到那篇帖子。这个破解方法是这样的:1) 在文件 /language/english/user.php 中添加以下行
// hack jordi user groups displaying
define('_US_GRUPOS','Community Status');
// end of hack jordi
2) 在 userinfo.php 文件中找到以下内容
if ( is_object($xoopsUser) && $isAdmin) {

    
$xoopsTpl->assign('lang_editprofile'_US_EDITPROFILE);

    
$xoopsTpl->assign('lang_deleteaccount'_US_DELACCOUNT);

    
$xoopsTpl->assign('user_uid'$thisUser->getVar('uid'));

}
在其后添加以下内容
// hack 显示用户组

$verGrupos $thisUser->getGroups();
$susGrupos='';
        
//组编号1始终是管理员
if ( in_array("1"$verGrupos) ) { $susGrupos '管理员'; }

//组4是你可能创建的组
// 如果你没有创建,请删除这行
// 你也可以添加更多的行,检查从4到X的编号,以检查你创建的组

elseif ( in_array("4"$verGrupos) ) { $susGrupos .= '你创建的组'; }
//组2是注册用户组。如果他们是注册用户,那么所有人都属于这个组
elseif ( in_array("2"$verGrupos) ) { $susGrupos .= '自豪的成员'; }

// 这为system_userinfo变量赋值

$xoopsTpl->assign('lang_grupos'_US_GRUPOS);
$xoopsTpl->assign('user_grupos'$susGrupos);

// 结束hack:显示组
如果你想知道什么是组3,我必须说组3是匿名用户,所以他们没有用户资料,所以无需关心。如果你想显示一个组,无论用户属于另一个组,请使用“if”循环而不是“elseif”。
<tr valign>

<
td class="head" width="25%"><{$lang_avatar}>td>
<
td align><img src="<{$user_avatarurl}>" alt="Avatar" />td>

tr>
在此之后添加此内容

<
tr>
<
td class="head" width="25%"><{$lang_grupos}>td>
<
td class="odd"><{$user_grupos}>td>
tr>
现在你已经弄懂了!你不需要创建任何数据库或类似的东西,只需按照这三个步骤进行。Jordi R. Cardona。


评论归作者所有。我们对内容不负责任。
user

 哈哈哈


哈哈哈,哎呀。我的意思是前3行只是一些问候...无论如何,感谢发布这篇文章。

约迪

 
user

 修改为显示所有组


我稍作修改,以便显示所有组,而无需为每个组添加if/else语句。

我有许多组,未来可能会添加更多,因此我不想每次添加新组时都修改userinfo.php。

与上面一样,只是在第2步我添加了以下代码



// hack display user groups

 //check for user's groups
   
$mygroups =& $member_handler->getGroupsByUser($thisUser->getVar('uid'), true);
   
$mygroups 
as $group){
      $gname $group->getVar('name');
      
$in_groups .= $gname", ";
   }

$in_groups substr($in_groups0, -2); 

$xoopsTpl->assign('lang_grupos'_US_GRUPOS);
$xoopsTpl->assign('user_grupos'$in_groups);

// end hack


此外,如果您尝试修改模板但无效,请通过管理 > 系统 > 模板访问模板。

我在XOOPS 2.10.17中使用过这个功能。

 


Login

Who's Online

287 user(s) are online (18 user(s) are browsing XOOPS FAQ)


Members: 0


Guests: 287


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Aug 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Did you know ?

you can monitor all visitor activity through php-stats!

Random question

How can i open another website inside my xoops website?