Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

【笨笨出品】用户组分为男女显示

[复制链接]
笨笨啊 发表于 2009-2-9 11:54:34 | 显示全部楼层 |阅读模式
插件发布
插件名称: 用户组分为男女显示
插件来源:
适用版本: Discuz! 7.0
语言编码: GBK简体 
最后更新时间:
插件作者: 笨笨啊
插件简介: 用户组分为男女。需要在后台重新设置用户组名。如等级名称改为“骑士/公主”,则在此等级的男会员等级就会显示为“骑士”,而女会员则显示为“公主”。可以实现论坛等级的个性化
本帖最后由 笨笨啊 于 2009-2-9 13:32 编辑

插件名称:用户组分为男女显示
适用版本:DZ7 & other version
安装程序:笨笨啊
安装难易:极简单
作者论坛:碧海潮声 http://www.zjoubbs.com
作者邮箱:netknave@163.com
插件说明:用户组分为男女。需要在后台重新设置用户组名。如等级名称改为“骑士/公主”,则在此等级的男会员等级就会显示为“骑士”,而女会员则显示为“公主”。可以实现论坛等级的个性化
增加表  :无
影响字段:无
增加文件:无
修改文件:
include/global.func.php
memcp.php
space.php
viewthread.php
logging.php

以下是安装方法,请在修改前备份好你的相关文件。



一、程序修改方法

1.打开include/global.func.php

找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. ?>
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

在前面加上
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. ////////自定义头衔 by 笨笨啊。男女头衔用/分开
  2. function getdiylevel($level,$gender)
  3. {
  4.         global $tl;
  5.         $tl=explode('/',$level);
  6.         return(count($tl)>1 && $gender==2?$tl[1]:$tl[0]);
  7. }
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

2.打开memcp.php
找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1.                         if($group['groupid'] == $groupid) {
  2.                                 $maingroup = $group;
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


在后面加上

◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1.                                 //男女分开头衔 start @ 2009-02-08 By 笨笨啊
  2.                                 $maingroup['grouptitle'] = getdiylevel($maingroup['grouptitle'],$member['gender']);
  3.                                 //男女分开头衔 end
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


3.打开space.php
找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. if($inajax) {
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

在前面加上
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. //男女分开头衔 start @ 2009-02-08 By 笨笨啊
  2. $member['grouptitle'] = getdiylevel($member['grouptitle'],$member['gender']);
  3. //男女分开头衔 end
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇



4.打开viewthread.php
找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. $post['authortitle'] = $_DCACHE['usergroups'][$post['groupid']]['grouptitle'];
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇
        在后面加上
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1.                         //男女分开头衔 start @ 2009-02-08 By 笨笨啊
  2.                         $post['authortitle'] = getdiylevel($post['authortitle'],$post['gender']);
  3.                         //男女分开头衔 end
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

5.打开logging.php
找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. $member = $db->fetch_first("SELECT m.uid AS discuz_uid, m.username AS discuz_user, m.password AS discuz_pw, m.secques AS discuz_secques,
  2.                                 m.email, m.adminid, m.groupid, m.styleid AS styleidmem, m.lastvisit, m.lastpost, u.allowinvisible
  3.                                 FROM {$tablepre}members m LEFT JOIN {$tablepre}usergroups u USING (groupid)
  4.                                 WHERE m.uid='$ucresult[uid]'");
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇
加上一个m.gender,变成

◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. //男女用户组名分开 修改 @ 2009-02-09 By 笨笨啊
  2. //在此处增加m.gender

  3.                         $member = $db->fetch_first("SELECT m.uid AS discuz_uid, m.username AS discuz_user, m.password AS discuz_pw, m.secques AS discuz_secques,
  4.                                 m.email, m.adminid, m.groupid, m.styleid AS styleidmem, m.lastvisit, m.lastpost, u.allowinvisible,m.gender
  5.                                 FROM {$tablepre}members m LEFT JOIN {$tablepre}usergroups u USING (groupid)
  6.                                 WHERE m.uid='$ucresult[uid]'");
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


往下找,找到
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1. $usergroups = $_DCACHE['usergroups'][$groupid]['grouptitle'];
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇
在后面加上
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  1.                                 //男女用户组名分开 start @ 2009-02-09 By 笨笨啊
  2.                                 $usergroups = getdiylevel($usergroups,$member['gender']);
  3.                                 //男女用户组名分开 end @ 2009-02-09 By 笨笨啊
复制代码
◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


安装完成!

附上全新安装的discuz7.0.0修改后的文件

评分

1

查看全部评分

Gnagno 发表于 2009-2-9 11:58:02 | 显示全部楼层
看看
回复

使用道具 举报

 楼主| 笨笨啊 发表于 2009-2-9 11:58:49 | 显示全部楼层
本帖最后由 笨笨啊 于 2009-2-9 13:37 编辑

沙发自己占

几点说明

本插件原本是for pw3的原创,05年写的东西

近几日刚刚把论坛从pw432转移到dz过来,所以逐渐转自己以前写的一些东西过来

以前接触dz插件不多,所以有什么遗漏的地方,请大家见谅

如果有遗漏的页面,请告之楼主,我会继续更新的。谢谢

-_-#,发帖没有反应,被人抢走沙发了


如果性别选择保密,默认为前者。。。。
sslnhalf 发表于 2009-2-9 13:07

嗯,是的
如果需要保密也用其它样式的话,只需要改一下主函数就行了

getdiylevel这个函数

改成
  1. ////////自定义头衔 by 笨笨啊。男女头衔用/分开

  2. function getdiylevel($level,$gender)
  3. {
  4.         global $tl;
  5.         $tl=explode('/',$level);
  6.         return(count($tl)>$gender?$tl[$gender]:$tl[0]);
  7. }
复制代码
即可

但需要注意。后台的用户组名必须以“保密/男/女”的顺序来做

如“神秘路人/小帅哥/小美女”
回复

使用道具 举报

qq599315722 发表于 2009-2-9 12:51:03 | 显示全部楼层
给个``演示~
回复

使用道具 举报

sslnhalf 发表于 2009-2-9 12:52:32 | 显示全部楼层
貌似不错。。。。。呵呵
回复

使用道具 举报

 楼主| 笨笨啊 发表于 2009-2-9 12:59:37 | 显示全部楼层
给个``演示~
qq599315722 发表于 2009-2-9 12:51


就是可以将男女会员在同一等级可以显示不同的组名

上面有说明的

演示这个也不好看的吧?截张图过来
回复

使用道具 举报

sslnhalf 发表于 2009-2-9 13:03:32 | 显示全部楼层
呵呵,本地试了下的确管用。。。。。
回复

使用道具 举报

jincojinco 发表于 2009-2-9 13:07:06 | 显示全部楼层
有人很需要。
回复

使用道具 举报

sslnhalf 发表于 2009-2-9 13:07:07 | 显示全部楼层
如果性别选择保密,默认为前者。。。。
回复

使用道具 举报

 楼主| 笨笨啊 发表于 2009-2-9 13:08:55 | 显示全部楼层
本帖最后由 笨笨啊 于 2009-2-9 13:36 编辑
如果性别选择保密,默认为前者。。。。
sslnhalf 发表于 2009-2-9 13:07

嗯,是的
如果需要保密也用其它样式的话,只需要改一下主函数就行了

getdiylevel这个函数

改成
  1. ////////自定义头衔 by 笨笨啊。男女头衔用/分开

  2. function getdiylevel($level,$gender)
  3. {
  4.         global $tl;
  5.         $tl=explode('/',$level);
  6.         return(count($tl)>$gender?$tl[$gender]:$tl[0]);
  7. }
复制代码
即可

但需要注意。后台的用户组名必须以“保密/男/女”的顺序来做

如“神秘路人/小帅哥/小美女”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-27 09:57 , Processed in 0.036321 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表