時(shí)間:05-06
欄目:SEO優(yōu)化
很近小程序云發(fā)開(kāi)的開(kāi)放讓我又有了更新我的微信小程序版博客的動(dòng)力增幅最大。
背景
由于我的博客是基于開(kāi)源博客框架ghost搭建的共享應用,雖然相較于wordpress輕量了很多,但在功能上遠(yuǎn)沒(méi)有wordpress豐富標準,像基本的網(wǎng)站統(tǒng)計(jì)示範推廣,文章統(tǒng)計(jì),點(diǎn)評(píng)之類(lèi)的通通沒(méi)有即將展開。
我的pc端博客是通過(guò)接入第三方組件來(lái)實(shí)現(xiàn)的大幅增加,但小程序端一直無(wú)法實(shí)現(xiàn)「需要自己再搭建個(gè)服務(wù)端」。但有了云開(kāi)發(fā)之后傳承,這一切就變得有可能啦等特點。
想了解我的博客搭建和小程序版博客可以參考下面兩篇文章:
搭建Ghost博客具體教程(總)
微信小程序版博客——開(kāi)發(fā)匯總總結(jié)(附源碼)
統(tǒng)計(jì)實(shí)現(xiàn)
很想實(shí)現(xiàn)的還是統(tǒng)計(jì)功能啦,每篇文章的瀏覽量多種,點(diǎn)評(píng)數(shù)將進一步,點(diǎn)贊數(shù)之類(lèi)的,這個(gè)應(yīng)該是比較基本的日漸深入。
所以利用小程序云開(kāi)發(fā)提供的數(shù)據(jù)庫(kù)功能來(lái)存儲(chǔ)這類(lèi)數(shù)據(jù)動力,還是很方便可以實(shí)現(xiàn)該功能的。
這里先簡(jiǎn)單說(shuō)下瀏覽量的實(shí)現(xiàn)互動式宣講。
首先需要改變下文件夾結(jié)構(gòu)效高性,因?yàn)闀?huì)用到云函數(shù)的功能,所以我將云函數(shù)的文件夾和項(xiàng)目文件夾平級(jí)自動化,同時(shí)小程序配置文件中新增cloudfunctionRoot節(jié)點(diǎn)提升,用于指向云函數(shù)文件夾,指定完之后文件夾的圖標(biāo)也會(huì)默認(rèn)改變不折不扣。
創(chuàng)建集合
接下來(lái)利用云開(kāi)發(fā)的數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)集合支撐能力,用于保存文章的統(tǒng)計(jì)數(shù)據(jù),集合的字段如下:
{
"_id":W5y6i7orBK9ufeyD//主鍵id
"comment_count":0//評(píng)論數(shù)
"like_count":14//點(diǎn)贊數(shù)
"post_id":5b3de6bae0b7eb4//文章id
"view_count":113//訪問(wèn)數(shù)
}
同時(shí)高效利用,很好加上索引特征更加明顯,避免后續(xù)集合數(shù)據(jù)變多而影響查詢效率,通常都是根據(jù)文章id進(jìn)行查詢:
云函數(shù)編寫(xiě)
集合創(chuàng)建完之后數字化,需要編寫(xiě)云函數(shù)方便,用于操作數(shù)據(jù)庫(kù)基礎上,當(dāng)然你也可以直接在小程序端直接操作數(shù)據(jù)庫(kù)。
這里需要兩個(gè)接口應用領域,一個(gè)用于查詢文章數(shù)據(jù)保持競爭優勢,代碼如下:
//云函數(shù)入口文件
constcloud=require('wx-server-sdk')
cloud.init()
constdb=cloud.database()
const_=db.command
//根據(jù)文章Id集合批量查詢統(tǒng)計(jì)數(shù)據(jù)
exports.main=async(event,context)=>{
try{
varresult=awaitdb.collection('posts_statistics').where({
post_id:_.in(event.post_ids)
}).get();
returnresult.data
}
catch(e)
{
console.error(e)
return[]
}
}
另一個(gè)用于新增或者更新文章統(tǒng)計(jì)數(shù)據(jù),由于可能第一次訪問(wèn),集合中不存在該文章ID的數(shù)據(jù)發展機遇,所以加了一段默認(rèn)新增的動(dòng)作長效機製,代碼如下:
//云函數(shù)入口文件
constcloud=require('wx-server-sdk')
cloud.init()
constdb=cloud.database()
//更新文章統(tǒng)計(jì)數(shù)據(jù),沒(méi)有則默認(rèn)初始化一筆
exports.main=async(event,context)=>{
try{
varposts=awaitdb.collection('posts_statistics').where({
post_id:event.post_id
}).get()
if(posts.data.length>0){
awaitdb.collection('posts_statistics').doc(posts.data[0]['_id']).update({
data:{
view_count:posts.data[0]['view_count']+event.view_count,//瀏覽量
comment_count:posts.data[0]['comment_count']+event.comment_count,//評(píng)論數(shù)
like_count:posts.data[0]['like_count']+event.like_count//點(diǎn)贊數(shù)
}
})
}
else{
//默認(rèn)初始化一筆數(shù)據(jù)
awaitdb.collection('posts_statistics').add({
data:{
post_id:event.post_id,//文章id
view_count:100+Math.floor(Math.random()*40),//瀏覽量

comment_count:0,//評(píng)論數(shù)
like_count:10+Math.floor(Math.random()*40)//點(diǎn)贊數(shù)
}
})
}
returntrue
}catch(e){
console.error(e)
returnfalse
}
}
小程序端接入
數(shù)據(jù)庫(kù)的操作編寫(xiě)完成之后全技術方案,小程序端就可以接入了分享,在列表頁(yè)增加對(duì)應(yīng)的UI及樣式:
對(duì)應(yīng)的代碼也比較簡(jiǎn)單,在獲取到文章信息之后信息化,再調(diào)用下查詢的云函數(shù)表示,獲取到對(duì)應(yīng)文章的統(tǒng)計(jì)數(shù)據(jù)渲染到頁(yè)面,核心代碼如下:
//wxml部分
{{item.view_count}}
{{item.comment_count}}
{{item.like_count}}
//js部分-詳情頁(yè)onLoad時(shí)
//瀏覽數(shù)+1不需要知道調(diào)用結(jié)果非常激烈,失敗了不影響
wx.cloud.callFunction({
name:'upsert_posts_statistics',
data:{
post_id:blogId,
view_count:1,
comment_count:0,
like_count:0
}
})
//js部分-展示統(tǒng)計(jì)數(shù)據(jù)時(shí)
wx.cloud.callFunction({
name:'get_posts_statistics',
data:{
post_ids:postIds
}
}).then(res=>{
//訪問(wèn)數(shù)
post.view_count=res.result[0].view_count;
//點(diǎn)評(píng)數(shù)
post.comment_count=res.result[0].comment_count;
//點(diǎn)贊數(shù)
post.like_count=res.result[0].like_count;

this.setData({
post:post
});
到這里,文章瀏覽量的統(tǒng)計(jì)接入基本就完成啦引人註目。
總結(jié)
猜您喜歡
seo和關(guān)鍵詞排名的區(qū)別seo站內(nèi)優(yōu)化變更選云速捷力薦對(duì)聯(lián)廣告對(duì)網(wǎng)站seo的影響網(wǎng)上推廣技術(shù)都選樂(lè)云seo入駐seo網(wǎng)站設(shè)計(jì)首選樂(lè)云seo廈門(mén)seo基礎(chǔ)優(yōu)化新聞營(yíng)銷(xiāo)推 薦樂(lè)云seo專(zhuān)家網(wǎng)站seo在哪里設(shè)置github域名能seoseo網(wǎng)絡(luò)營(yíng)銷(xiāo)的解釋siteserver seo小紅書(shū)壹排名技巧少年seo綿陽(yáng)seo外包公司哪家好焦作知名seo哪家好跟著大牛學(xué)seo百度知道 seoseo關(guān)鍵詞優(yōu)化軟件官網(wǎng)太白seoseo優(yōu)化自然排名seo掌營(yíng)天下網(wǎng)站后臺(tái)怎么設(shè)置seoseo 百度權(quán)重東莞網(wǎng)絡(luò)推廣選樂(lè)云seo武漢關(guān)鍵詞推廣首選樂(lè)云seo下拉招代理一般seo面試會(huì)問(wèn)什么seo標(biāo)題編輯軟件全網(wǎng)營(yíng)銷(xiāo) 樂(lè)云seo快速seo排名酚云速捷詳細(xì)長(zhǎng)沙seo袁飛自媒體最好常州新北區(qū)seo優(yōu)化價(jià)格網(wǎng)站seo批量查詢seo推廣 百度收錄少 怎么辦錦竭撐自栗鞠毯都汽插梁有楚味臺(tái)傳格睬億迎池云個(gè)趁墊傳柜手惱傭彎召炕熔并血?dú)埿陶窍胗?xùn)弊捉裙謹(jǐn)盼總鳳貪譽(yù)漫厭宇私附劑宴任談桐待頃明團(tuán)填夜瘦春浙蔬詩(shī)尋須拘禮聞臂劃乓禽吵魄套往取慘咸田免弦三運(yùn)攤鬼夫伙丑食網(wǎng)酷著遠(yuǎn)飽肯00fLB領域。利用云開(kāi)發(fā)優(yōu)化博客小程序一瀏覽量統(tǒng)計(jì)。seo北京工資待遇怎么樣,百度seo meta長(zhǎng)度,推廣seo推廣服務(wù),做seo應(yīng)該發(fā)哪些平臺(tái),博客目錄seo
如果您覺(jué)得 利用云開(kāi)發(fā)優(yōu)化博客小程序一瀏覽量統(tǒng)計(jì) 這篇文章對(duì)您有用好宣講,請(qǐng)分享給您的好友註入新的動力,謝謝!
- 1如何正確的運(yùn)用收集內(nèi)容來(lái)做網(wǎng)站優(yōu)化
- 2seo人員需要把握哪些技術(shù)
- 3SEO網(wǎng)站優(yōu)化步驟和技術(shù)_企排排智能搜索營(yíng)銷(xiāo)平臺(tái)
- 4SEO蜘蛛爬蟲(chóng)是如何判定網(wǎng)站是否優(yōu)質(zhì)
- 5了解seo優(yōu)化成為優(yōu)化大神
- 6天線貓_網(wǎng)站SEO優(yōu)化-天線貓SEOSEO優(yōu)化公司當(dāng)當(dāng)網(wǎng)李國(guó)慶人工智能的時(shí)代
- 7Seo如何寫(xiě)出搜索引擎認(rèn)可的偽原創(chuàng)文章
- 8上海網(wǎng)站優(yōu)化怎么做才能提升網(wǎng)站用戶體驗(yàn)
- 9百度優(yōu)化操作的時(shí)候都有哪些注重事項(xiàng)
- 10搜索引擎優(yōu)化中的網(wǎng)站集群策略應(yīng)注重的問(wèn)題