微信小程序发表话题的黑名单和白名单

更新时间:2024-03-16 分类:小程序 浏览量:3450

FirmBee@Pixabay

前些时候对微信小程序的插件扩展了前端用户发帖功能,支持前端用户上传图像和发表话题。当时,为的是尽快上线这一个功能,所以,并没有完善的扩展黑名单和白名单,一律采用审核发帖。后面有人问能不能加黑名单和白名单,就在想如何增加黑名单和白名单功能。

在插件通加黑名单和白名单功能,应该说并不是什么难事,可以在用户信息内增加一个黑名单或是白名单的判断,如果是黑名单,即限制该用户发表话题,如果是白名单用户,则该用户发表的话题可以不经过审核直接发布。但是,感觉扩展用户信息,又需要做一些信息返回和用户配对判断,感觉会有一些麻烦,更重要的是,编辑用户的时候,需要一个一个用户去进行编辑,感觉不是一个好方法。

经过一番思考,最后决定采用用户分组方式进行,这样方便批量编辑,又不需要扩展太多用户信息进行配对判断。而且,经过尝试之后,使用用户分组功能做黑名单和白名单,在使用上还可以有更多尝试。比如创建 VIP 分组,可以设定某些分类或是文章仅可以 VIP 用户组进行查看。也可以采用阶梯式的用户分组,然后提供不同的权限,可浏览访问不同的内容。具体的实现,这里就不做详述,这只是一种思路,主要还是介绍艾码汇微信小程序的发帖用户黑名单和白名单用户的设置。

首先,创建两个用户组,分别是黑名单和白名单用户组。艾码汇定制的插件在默认情况下,安装激活即可创建三个用户组,分别是微信组,黑名单,白名单。但是,也有可能创建不成功。如果在用户管理列表中的 [将角色变更为] 下拉框中没有出现这三个用户组,可以使用下面的代码进行创建。

把下面的代码加入主题模板函数文件:functions.php 结束之前


add_role( 'wechat', '微信组', array( 'read' => true, 'level_0' => true ) );
add_role( 'white', '白名单', array( 'read' => true, 'level_0' => true ) );
add_role( 'black', '黑名单', array( 'read' => true, 'level_0' => true ) );

注:或者直接点击这里下载插件上传安装启用,创建用户组成功后,可停用插件删除。

其次,创建用户组完成之后,则根据需要,把用户移到对应的用户组。比如,要把某个用户变为黑名单用户,限制该用户发表话题,只要选择中该用户,然后在 [将角色变更为] 下拉列表中选择黑名单,点击更改即可。

编辑黑名单用户

如果仅是单个用户,也可以通过编辑用户信息进行更改

编辑黑名单用户

保存完成后,就已经把用户的角色变成了黑名单用户了。白名单用户的操作是一样的。

黑名单,白名单用户和其他用户什么区别?

其实并没有什么区别,三者的权限创建的时候,都是最低级别的,区别在于黑名单的用户在发表话题的时候,会被限制发表,不能正常发布,而且内容不会提交到网站后台,包括图像。白名单用户则发表话题的时候,不需要经过后台的审核发布,立即发布完成。其他的用户组则在创建话题的时候,需要经过管理员的审核才可以发布。当然,目前已经增加了审核通知功能。

最后,如果在创建黑名单和白名单仍有疑问,可以微信联系我。

题图封面:摄影 / FirmBee 出处 / Pixabay 授权