备案权重域名预定

 找回密碼
 加入我們

Discuz!X3系列 「會員每小時發帖數限制「修改為」vip每天發帖數限制「教程

[複製鏈接]
小豬哼囔 發表於 2022-10-3 09:43:01 | 顯示全部樓層 |閱讀模式
修改後台用戶組的設置,由「會員每小時發帖數限制「到」會員每天發帖數限制「,下面分別講一下Discuz! X2和Discuz! X2.5的修改方法。


一、Discuz! X2的修改方法:
1,修改後台設置顯示;
"sourcelanguagelang_admincp.php"的5021行

  1. 'project_option_group_maxpostsperhour' => '會員每小時發帖數限制',
複製代碼


修改為:

  1. 'project_option_group_maxpostsperhour' => '會員每天發帖數限制',
複製代碼



2,修改發帖數超過限制提醒文字;
sourcelanguagelang_message.php"的105行

  1. 'post_flood_ctrl_posts_per_hour' => '抱歉,您所在的用戶組每小時限制發帖 {posts_per_hour} 個,請稍候再發表',
複製代碼


修改為:

  1. 'post_flood_ctrl_posts_per_hour' => '抱歉,您所在的用戶組每天限制發帖 {posts_per_hour} 個,請稍候再發表',
複製代碼



3,修改檢驗程序文件,友「會員每小時發帖數限制「修改為」會員每天發帖數限制「
"sourcefunctionfunction_post.php"的313行

  1. function checkmaxpostsperhour() {
  2. global $_G;
  3. $morepostsperhour = false;
  4. if(!$_G['group']['disablepostctrl'] && $_G['uid']) {

  5. if($_G['group']['maxpostsperhour']) {
  6. $timestamp = $_G['timestamp']-3600;
  7. $userposts = DB::result_first('SELECT COUNT(*) FROM '.DB::table('common_member_action_log')." WHERE dateline>$timestamp AND (`action`='".getuseraction('tid')."' OR `action`='".getuseraction('pid')."') AND uid='$_G[uid]'");
  8. $isflood = $userposts && ($userposts >= $_G['group']['maxpostsperhour']);
  9. if($isflood) {
  10. $morepostsperhour = true;
  11. }
  12. }
  13. }
  14. return $morepostsperhour;
  15. }
複製代碼


修改為:

  1. function checkmaxpostsperhour() {
  2. global $_G;
  3. $morepostsperhour = false;
  4. if(!$_G['group']['disablepostctrl'] && $_G['uid']) {

  5. if($_G['group']['maxpostsperhour']) {
  6. $timestamp = $_G['timestamp']-86400;
  7. $userposts = DB::result_first('SELECT COUNT(*) FROM '.DB::table('common_member_action_log')." WHERE dateline>$timestamp AND (`action`='".getuseraction('tid')."' OR `action`='".getuseraction('pid')."') AND uid='$_G[uid]'");
  8. $isflood = $userposts && ($userposts >= $_G['group']['maxpostsperhour']);
  9. if($isflood) {
  10. $morepostsperhour = true;
  11. }
  12. }
  13. }
  14. return $morepostsperhour;
  15. }
複製代碼



二、Discuz! X2.5的修改方法:
1,修改後台設置顯示;
"sourcelanguagelang_admincp.php"的3703行


  1. 'usergroups_edit_basic_hour_threads' => '會員每小時發主題數限制',
  2. 'usergroups_edit_basic_hour_threads_comment' => '設置允許會員每小時最多的發主題數量,可以配合灌水預防功能進一步限制會員的發帖,可設置為 1~255 範圍內的數值,0 為不限制。此功能會輕微加重服務器負擔,且對遊客無效',
  3. 'usergroups_edit_basic_hour_posts' => '會員每小時發回帖數限制',
  4. 'usergroups_edit_basic_hour_posts_comment' => '設置允許會員每小時最多的發回帖數量,可以配合灌水預防功能進一步限制會員的發帖,可設置為 1~255 範圍內的數值,0 為不限制。此功能會輕微加重服務器負擔,且對遊客無效',
複製代碼


修改為:


  1. 'usergroups_edit_basic_hour_threads' => '會員每天發主題數限制',
  2. 'usergroups_edit_basic_hour_threads_comment' => '設置允許會員每天最多的發主題數量,可以配合灌水預防功能進一步限制會員的發帖,可設置為 1~255 範圍內的數值,0 為不限制。此功能會輕微加重服務器負擔,且對遊客無效',
  3. 'usergroups_edit_basic_hour_posts' => '會員每天發回帖數限制',
  4. 'usergroups_edit_basic_hour_posts_comment' => '設置允許會員每天最多的發回帖數量,可以配合灌水預防功能進一步限制會員的發帖,可設置為 1~255 範圍內的數值,0 為不限制。此功能會輕微加重服務器負擔,且對遊客無效',
複製代碼


sourcelanguagelang_message.php"的144行

  1. 'thread_flood_ctrl_threads_per_hour' => '抱歉,您所在的用戶組每天限制發主題 {threads_per_hour} 個,請稍候再發表',
複製代碼


修改為:

  1. 'thread_flood_ctrl_threads_per_hour' => '抱歉,您所在的用戶組每天限制發主題 {threads_per_hour} 個,請稍候再發表',
複製代碼



3,修改檢驗程序文件,友「會員每小時發帖數限制「修改為」會員每天發帖數限制「
"sourceclasstabletable_common_member_action_log.php"的32行

  1. public function count_per_hour($uid, $type) {
  2. return DB::result_first('SELECT COUNT(*) FROM %t WHERE dateline>%d AND `action`=%d AND uid=%d', array($this->_table, TIMESTAMP - 3600, getuseraction($type), $uid));
  3. }
複製代碼


修改為:

  1. public function count_per_hour($uid, $type) {
  2. return DB::result_first('SELECT COUNT(*) FROM %t WHERE dateline>%d AND `action`=%d AND uid=%d', array($this->_table, TIMESTAMP - 86400, getuseraction($type), $uid));
  3. }
複製代碼


參考以上方法,我們可以修改discuz x3系列相關VIP每天發帖數限制
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 加入我們

本版積分規則

备案权重域名预定

QQ|4um創業社區

GMT+8, 2024-5-20 12:05

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回復 返回頂部 返回列表