千家信息网

如何开发discuz的关注功能

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这期内容当中小编将会给大家带来有关如何开发discuz的关注功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。本文实现功能:1.关注和取消关注用户2. 判断与用户之
千家信息网最后更新 2026年11月03日如何开发discuz的关注功能

这期内容当中小编将会给大家带来有关如何开发discuz的关注功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

本文实现功能:

1.关注和取消关注用户

2. 判断与用户之间的关注关系

实现效果

点击关注后显示已关注,取消关注后显示关注ta

实现方案

用户空间的入口是home.php文件,所以我们需要先从home.php这个文件入手

打开文件home.php文件的29行可以看到使用in_array进行了一次判断,主要注重space和spacecp这俩个模块

我们先认识俩个单词:space(空间) 和 spacecp(翻译过来是太空计划)

然后我们需要打开discuz原来的默认模板(这个是你自己在搭建一个discuz应用,没有任何改动的代码),然后发一个主题,随便点击一个用户图像,查看地址栏的地址信息。

发现进入的是space这个模块

那么根据地址栏我们可以找到source/include/space/space_profile.php这个文件。但是在这个文件里边,找不到任何有关于关注的代码。

但是这个文件里边包含了关于用户空间的所有需要的数据。比如用户粉丝量,用户主题数量、用户关注的数量、用户好友数量。这些值都保存在$space这个变量中,直接在模板里边使用接口。关于这些字段可以在数据库字典里边直接搜索关键字即可

于是我们在看一下spacecp这个模块,在这个目录下, 我们发现了follow这个文件。follow的英文翻译过来就有关注的含义。

在学习别人项目时,我们第一需要看文档,第二是需要自己根据目录结构和文件名来猜想其含义

打开文件source/include/spacecp/spacecp_follow.php。在文件一开头就有俩个数值,一个add一个del。然后是使用的op这个变量接收的。根据这个op变量就可以知道添加关注是add 取消关注时del方法

我们在add里边发现一个值follow_not_follow_self这个我的理解是自己不能关注自己。可以在language里边进行搜索这个值去进行确认。在这里就已经证明了source/include/spacecp/spacecp_follow.php就是实现关注的文件

接下来就是怎么进行请求呢!

根据下面箭头指向的四个$_GET值 我们能确定的请求地址为

home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid={$space[uid]}&mobile=2

至于为什么能确定请求地址,后文在介绍,本文重点是关注功能

然后我们在模板里边写上以下代码,就是关注ta的那个样式

          

点击关注,这个时候我们关注就已经做好了。那么取消关注也是同理了哈!

接下来我们根据关键字follow在数据库字典里边搜索,发现会有一个用户关注关系表

打开数据库查到pre_home_follow 这个表,就会发现有一条数据就是关注者跟被关注者。

在上文中我们实现了关注与取消关注,但是当我们关注了用户后,是不是需要显示已关注 或者 关注ta的字样

处理是否显示关注

我们打开数据库字典搜索pre_common_member_count 用户统计表。

在这个表里边我们发现有收听数量和听众数量。那么对应的就是关注数量和粉丝数量

然后打开文件source/include/space/space_profile.php加上代码

# 判断是否关注$follow_data =  DB::fetch_all("select * from pre_home_follow where uid = '$_G[uid]' and followuid = '$space[uid]' limit 1");if(!empty($follow_data)){    $space['is_follow'] = $follow_data[0]['mutual'];}

在template/default/touch/home/space_profile.htm模板里边进行判断

测试

没有关注时显示关注ta

关注之后显示以关注

总结

关于本文的实现关注功能。在网上的资料不是很多,但是我们也可以自己去研究实现。后期会一直推送discuz的文章。有任何问题,评论区见。

上述就是小编为大家分享的如何开发discuz的关注功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

文件 用户 数量 就是 数据 功能 地址 代码 数据库 模板 搜索 变量 字典 模块 空间 开发 接下来 主题 关键 关键字 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 互联网金融 科技 朗涯互联网科技 互联网前沿科技 国外互联网科技网站 互联网科技大会案例 富国互联网科技创新基金 湖南洣水互联网科技有限公司扣款 青岛中康互联网医疗科技有限公司 新华互联网科技2019 互联网科技博主是什么意思 受益于互联网科技的高速发展 福建科技产业互联网发展 晓花互联网科技有限公司网址 洛阳昕诺飞互联网科技有限公司 华中科技大学互联网的牛人 深圳互联网科技的发展 互联网科技资金流入 广州互联网高科技取餐柜 知域互联网科技有限公司官网 腾讯阿里互联网科技 互联网科技金融 互联网科技公司发展 互联网科技小贷 西藏七维空间互联网科技有限公司 厦门比较好的科技互联网公司 云南省自由互联网科技有限公司 云南互联网科技学费 互联网科技博主张洲 武汉亿视互联网科技有限公司
0