Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)2013年至今,先為金寨等服務(wù)建站,金寨等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為金寨企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

小編給大家分享一下Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

本文主要內(nèi)容:

解決Discuz主題瀏覽量不發(fā)生變化或者跟這回復(fù)帖子的數(shù)量一起變化

如果你是新手discuz開發(fā)人員可以從頭查看文章

如果你是一個(gè)站長直接看文章底部總結(jié)即可

問題還原

這這頁面為主題頁面

上面紅框?yàn)橹黝}的瀏覽量使用的是$_G[forum_thread][views]

下面全部回復(fù)為回帖數(shù)量使用的是$_G[forum_thread][replies]

然而我們刷新頁面時(shí)瀏覽量并不會(huì)增加,但是我們?cè)谥黝}回復(fù)一個(gè)帖子時(shí)瀏覽量就會(huì)增加

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

那我們?cè)跍y試一下,新增一個(gè)回帖,會(huì)發(fā)現(xiàn)確實(shí)如此哈!但是問題不是那么簡單,請(qǐng)繼續(xù)看下文

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

排查步驟
  • 第一步:我們需要確認(rèn)瀏覽量跟回帖量是不是這倆個(gè)字段

  • 第二步:我們需要追溯瀏覽量增加的原理

那么下來咱們來排查第一個(gè)問題:打開數(shù)據(jù)庫字典查看pre_forum_thread 表,那么我們就確定了我們?cè)谠创a里使用的變量是正確的

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

追溯瀏覽量實(shí)現(xiàn)的原理

在代碼的986行,我們就解決了我們的第一個(gè)問題,那就是為什么瀏覽量跟回帖量的數(shù)據(jù)是一樣的,這是因?yàn)樵谶@里做了一個(gè)判斷。如果回復(fù)貼的數(shù)量大于主題瀏覽量時(shí),會(huì)讓瀏覽量跟回帖量相等

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

然后繼續(xù)尋找更新主題瀏覽量的代碼:在1054行里有viewthread_updateviews這個(gè)方法,根據(jù)字面意思我們都能理解這個(gè)方法是干嘛的,主題更新瀏覽量的。

這段代碼執(zhí)行的步驟

  • 先回判斷后臺(tái)是否開啟了優(yōu)化主題瀏覽量優(yōu)化功能

  • 然后判斷全局變量里邊addviews這個(gè)的值

  • 如果這個(gè)值小于100就會(huì)把數(shù)據(jù)更新到pre_forum_threadaddviews這個(gè)表

  • 如果當(dāng)addviews這個(gè)值大于100時(shí)就會(huì)清空此專題的瀏覽量,然后會(huì)把這個(gè)數(shù)據(jù)存進(jìn)pre_forum_thread 主題表的views字段

  • 這就是基本的實(shí)現(xiàn)流程

  • 在上述中,我們發(fā)現(xiàn)了瀏覽量是不會(huì)直接存入主題表的,這樣做的好處就是防止頻繁更新主題表,防止鎖表

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

總結(jié)

到了這里我想該明白的也都明白了,關(guān)于主題瀏覽量不增加的原因其實(shí)都是后臺(tái)控制的,因?yàn)樵谏隙未a中的第一行就可以看到這個(gè)preventrefresh值是控制是否開啟優(yōu)化主題瀏覽量的

只要根據(jù)咔咔這樣配置就可以了。

但是作為開發(fā)者來說對(duì)一個(gè)功能點(diǎn)的實(shí)現(xiàn)必須追溯源碼,只有這樣才可以不斷提升自己。

Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法

以上是Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

本文名稱:Discuz主題瀏覽量實(shí)現(xiàn)原理和不更新的方法-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://bm7419.com/article36/cdgepg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管面包屑導(dǎo)航、App開發(fā)定制開發(fā)、網(wǎng)站維護(hù)、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營