需要修改的文件位置:/source/module/forum/forum_viewthread.php
對函數viewthread_updateviews進行修改,約1025行到1049行:
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']);}
一般來講,修改如下代碼:
C::t('forum_thread')->increase($_G['tid'], array('views' => 1), true, $tableid);
為:
C::t('forum_thread')->increase($_G['tid'], array('views' => rand(2,9)), true, $tableid);
為每次瀏覽增加2~9之間(含2和9)的隨機數更新數據庫中的記錄。但是這么修改也不是絕對的可以改變瀏覽量,還要結合網站管理后臺的設置。
如果按上面的修改方法不好使,可以進入后臺,按下面方法設置:
后臺>>全局>>性能優化>>服務器優化>>是否優化更新主題瀏覽量
設置為“否” >> 提交
另外,也可以把下面這項設置為“否”,
后臺>>全局>>性能優化>>服務器優化>>查看數開啟防刷新
以上就是Discuz論壇修改瀏覽量為每次增加隨機數的實現方法的全部內容,希望對大家的學習和解決疑問有所幫助,也希望大家多多支持武林網。新聞熱點
疑難解答