注册 | 登录 |
地方论坛门户及新闻和人才网址大全

论坛人气弱?Discuz帖子刷新后阅读数进行随机值增加方法

时间:2021-07-21人气:-


论坛人气弱?想改阅读数的站长可以围观!

找到:source/module/forum/forum_viewthread.php文件

搜索代码:
function viewthread_updateviews($tableid)

找到代码:
function viewthread_updateviews($tableid) {        global $_G;        if(!$_G['setting']['preventrefresh'] || $_G['cookie']['viewid'] != 'tid_'.$_G['tid']) {                if(!$tableid && $_G['setting']['optimizeviews']) {                        if($_G['forum_thread']['addviews']) {                                if($_G['forum_thread']['addviews'] < 100) {                                        C::t('forum_threadaddviews')->update_by_tid($_G['tid']);                                } else {                                        if(!discuz_process::islocked('update_thread_view')) {                                                $row = C::t('forum_threadaddviews')->fetch($_G['tid']);                                                C::t('forum_threadaddviews')->update($_G['tid'], array('addviews' => 0));                                                C::t('forum_thread')->increase($_G['tid'], array('views' => $row['addviews']+1), true);                                                discuz_process::unlock('update_thread_view');                                        }                                }                        } else {                                C::t('forum_threadaddviews')->insert(array('tid' => $_G['tid'], 'addviews' => 1), false, true);                        }                } else {                        C::t('forum_thread')->increase($_G['tid'], array('views' => 1), true, $tableid);                }        }        dsetcookie('viewid', 'tid_'.$_G['tid']);}

修改为:
function viewthread_updateviews($tableid) {        global $_G;        $viewrand = rand(2,10);         if(!$_G['setting']['preventrefresh'] || $_G['cookie']['viewid'] != 'tid_'.$_G['tid']) {                                if(!$tableid && $_G['setting']['optimizeviews']) {                        if($_G['forum_thread']['addviews']) {                                if($_G['forum_thread']['addviews'] < 100) {                                        C::t('forum_threadaddviews')->update_by_tid($_G['tid']);                                } else {                                        if(!discuz_process::islocked('update_thread_view')) {                                                $row = C::t('forum_threadaddviews')->fetch($_G['tid']);                                                C::t('forum_threadaddviews')->update($_G['tid'], array('addviews' => $viewrand));                                                C::t('forum_thread')->increase($_G['tid'], array('views' => $row['addviews']+$viewrand), true);                                                discuz_process::unlock('update_thread_view');                                        }                                }                        } else {                                C::t('forum_threadaddviews')->insert(array('tid' => $_G['tid'], 'addviews' => $viewrand), false, true);                        }                } else {                        C::t('forum_thread')->increase($_G['tid'], array('views' => $viewrand), true, $tableid);                }        }        dsetcookie('viewid', 'tid_'.$_G['tid']);}

主要修改的是:

1.创建随机数变量:
$viewrand = rand(2,10);

rand(2,10)表示的2-10之间的随机数;

2.修改原有的几个更新方法:

分别是:

C::t('forum_thread')->increase($_G['tid'], array('views' => $row['addviews']+1), true);
  C::t('forum_threadaddviews')->insert(array('tid' => $_G['tid'], 'addviews' =>1), false, true);
  C::t('forum_thread')->increase($_G['tid'], array('views' =>1), true, $tableid);

改为:

C::t('forum_thread')->increase($_G['tid'], array('views' => $row['addviews']+$viewrand), true);
  C::t('forum_threadaddviews')->insert(array('tid' => $_G['tid'], 'addviews' => $viewrand), false, true);
  C::t('forum_thread')->increase($_G['tid'], array('views' => $viewrand), true, $tableid);


就好了!

上篇:discuz 帖子内容页面的 上一篇 下一篇 代码分析

下篇:discuz帖子内容页-回复按钮-代码