特殊用戶組免回復查看隱藏帖的修改方法
轉 https://blog.csdn.net/catshitone/article/details/38822325?_t_t_t=0.5293136069085449
FOR Discuz!X3.1 3.2 1.5等版本均可以
很多朋友在社區安裝后並在后台自定義中設置了如VIP用戶,
但該用戶在社區使用中還是有些權限無法給予。
這樣就給購買了VIP使用權限的用戶使用上帶來不便。
為更好的使特殊用戶能更好的感受一些特殊的權限,
今天教大家如何修改文件來達到特殊用戶不用回復就可查看隱藏帖的目的。
大家有可能會問,如何在數據庫中增加新的數據項,其實很簡單,大家在使用空間中都可使用phpMyAdmin來管理你的數據庫,如你可以使用可使用phpMyAdmin中的 運行 SQL 查詢中添加如上代碼再點擊右下方的執行即可。
一:升級數據庫:
輸入:
ALTER TABLE `pre_common_usergroup_field` ADD `ishidefree` TINYINT( 1 ) DEFAULT '0' NOT NULL
二:修改source/admincp/admincp_usergroups.php
查找:
showsetting('usergroups_edit_post_new', 'allowpostnew', $group['allowpost'], 'radio');
前面加入:
showsetting('usergroups_hidefree_post', 'ishidefreenew', $group['ishidefree'], 'radio');
再查找:
'allowpost' => $_GET['allowpostnew'],
前面加入 :
'ishidefree' => $_GET['ishidefreenew'],
三:修改source/function/function_discuzcode.php
查找(大概在38行):
if($_G['member']['credits'] >= $creditsrequire || $_G['forum']['ismoderator']
后面插入 :
|| $_G['group']['ishidefree']
整體效果為:
if($_G['member']['credits'] >= $creditsrequire || $_G['forum']['ismoderator'] || $_G['group']['ishidefree']|| $_G['uid'] && $authorid == $_G['uid']) {
再找第2個 :
if($authorreplyexist
注意:是第2個(一共有兩個,這里要改第2個)
后面插入 :
|| $_G['group']['ishidefree']
整體效果:
if($authorreplyexist||$_G['group']['ishidefree']){
四:修改source/language/lang_admincp.php
查找:
'usergroups_edit_post_new' => '允許發新話題',
在上面添加:
-
'usergroups_hidefree_post' => '擁有隱藏貼免回覆權限:',
-
'usergroups_hidefree_post_comment' => '設置是否擁有隱藏貼免回覆權限',
四,后台 "用戶"->用戶組->論壇相關->貼子相關>要設置此功能的用戶組按設置是否擁有隱藏貼免回復權限 選"是",即可.