摘要:功能是個(gè)好功能,但是在下載的插件包中發(fā)現(xiàn)了一些,而且在使用步驟以及文件注釋中作者并沒(méi)有提及這些,想聯(lián)系作者,但是始終找不到作者的聯(lián)系方式,那只有自己修改了。資源優(yōu)化之后的插件包,點(diǎn)我下載
HelloChangYan原文是在我自己博客中,小伙伴也可以點(diǎn)閱讀原文進(jìn)行跳轉(zhuǎn)查看,還有好聽(tīng)的背景音樂(lè)噢~
HelloChangYan是一個(gè)typecho的暢言評(píng)論回推插件,顧名思義就是在網(wǎng)站中使用了暢言評(píng)論之后,把評(píng)論內(nèi)容以及一些參數(shù)數(shù)據(jù)回推到網(wǎng)站,達(dá)到網(wǎng)站評(píng)論和暢言同步的效果。
功能是個(gè)好功能,但是在下載的插件包中發(fā)現(xiàn)了一些BUG,而且在使用步驟以及文件注釋中作者并沒(méi)有提及這些,想聯(lián)系作者,但是始終找不到作者的聯(lián)系方式,那只有自己修改了。主要有兩點(diǎn)
路徑問(wèn)題,導(dǎo)致出現(xiàn)500報(bào)錯(cuò)
字符串替換問(wèn)題,導(dǎo)致評(píng)論數(shù)據(jù)插入評(píng)論表異常
下面就談一下出現(xiàn)bug的地方和改善方法
問(wèn)題以及改善問(wèn)題都是出現(xiàn)在feedback.php文件中,先看一下這個(gè)文件的源碼:
上圖為feedback.php的源碼截圖,我在圖中做了標(biāo)記的1、2兩處就是需要修改的地方。
修改路徑第一處:
require_once dirname(__FILE__) . "/config.inc.php";
上述這段代碼的意思是引入在當(dāng)前目錄中的config.inc.php文件,但是在我們的目錄列表中并沒(méi)有找到這個(gè)文件,回想一下,config.inc.php這個(gè)文件好像就是typecho的配置文件,作者的真正意圖應(yīng)該是想要引入這個(gè)文件,所以我們修改為:
require_once "../../../config.inc.php";
讓它去項(xiàng)目根目錄找到config.inc.php并引入,便可解決問(wèn)題
替換指定字符串第二處:
$title = str_replace(" - Hello World", "", $jsonp->title);
由上述代碼得知,是去掉 - Hello World字符串,并得到一個(gè)新的字符串,也就是網(wǎng)站中存在的真實(shí)的文章標(biāo)題。這個(gè)標(biāo)題用來(lái)查找文章ID,在$rows = $db->fetchAll($db->select()->from("table.contents")->where("title = ?", $title));這段代碼中可以看出。
接上段,實(shí)際上暢言返回json數(shù)據(jù)的title值,并沒(méi)有 - Hello World字符串,這是什么原因呢?我們看一下,暢言實(shí)際返回的json數(shù)據(jù)(以我的網(wǎng)站為例):
從上面title字段中可以看出,返回的title是一個(gè)文章標(biāo)題+文章撰寫(xiě)人的一個(gè)組合。通過(guò)這點(diǎn)我們就可以理解了,上面的代碼是為了去掉多余的文章撰寫(xiě)人,得到文章標(biāo)題。我們需要根據(jù)網(wǎng)站中的實(shí)際情況進(jìn)行修正,比如我的標(biāo)題中返回的撰寫(xiě)人是命中水,那么去掉命中水就可以了。
$title = str_replace(" - 命中水", "", $jsonp->title);
那么如何獲取網(wǎng)站撰寫(xiě)人呢?我們可以先把暢言返回的json數(shù)據(jù)保存在本地,然后查看title字段得到。
注意:在 - 命中水中的—左右各有一個(gè)空格,不要漏了;
做完上述工作,再把代碼簡(jiǎn)單優(yōu)化一下,差不多就是這個(gè)樣子:
以上就是這次發(fā)現(xiàn)的問(wèn)題和優(yōu)化方法,我已經(jīng)打包好了,放在文章末尾資源目錄下,需要的可以去下載;
使用說(shuō)明找到這個(gè)插件的地方幾乎都配有使用步驟描述,但是描述基本上都是零散或者不全面的,我把這些整理總結(jié)了一下,放在下面,第一次使用的小伙伴可以作為參考:
先把HelloChangYan插件上傳到typecho的usr/plugins目錄下
把HelloChangYan目錄里的comments.php文件復(fù)制到現(xiàn)在正在使用的主題目錄下,替換掉comments.php
去暢言官網(wǎng)注冊(cè)一個(gè)賬戶(hù),并在后臺(tái)首頁(yè)得到暢言秘鑰,APP ID和APP KEY
登陸typecho的博客后臺(tái)主頁(yè),在插件列表里啟用HelloChangYan,并打開(kāi)設(shè)置,在設(shè)置頁(yè)的暢言appid和暢言appkey文本框中填寫(xiě),上一步驟獲取的APP ID和APP KEY
在設(shè)置頁(yè)可以看到回推地址,這個(gè)文本框中有一串url,這個(gè)url就是暢言推送評(píng)論的回推地址,復(fù)制這個(gè)鏈接,然后進(jìn)入暢言后臺(tái),找到系統(tǒng)設(shè)置->通用設(shè)置->高級(jí)設(shè)置,在評(píng)論回推地址的文本框里填寫(xiě)剛剛復(fù)制的回推地址,點(diǎn)擊確定,并下拉到頁(yè)面最底部,保存設(shè)置。
上面都配置好之后,回到HelloChangYan的設(shè)置頁(yè),在最后一個(gè)選項(xiàng)中,啟用暢言即可。
以上就是這款插件的使用說(shuō)明了。
資源優(yōu)化之后的HelloChangYan插件包,點(diǎn)我下載
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/25660.html
摘要:由于是一個(gè)用于個(gè)人的博客系統(tǒng),所以其設(shè)計(jì)之初就不支持過(guò)大的數(shù)據(jù)量。在表數(shù)據(jù)量較大的情況下,表可能會(huì)容易損壞或者索引丟失,尤其是引擎。 由于Typecho是一個(gè)用于個(gè)人的博客系統(tǒng),所以其設(shè)計(jì)之初就不支持過(guò)大的數(shù)據(jù)量。但最近不少朋友向我求助,希望用typecho來(lái)搭建數(shù)據(jù)量較大的商業(yè)網(wǎng)站(譬如外貿(mào)團(tuán)隊(duì)),于是有了修改typecho使支持大量post的想法,最終實(shí)現(xiàn)了HPTypecho(Hi...
摘要:此文原本發(fā)表于我的博客老高的技術(shù)博客,歡迎和老高交流此篇我們開(kāi)始調(diào)用接口,我們?cè)诓寮?lèi)中新定義一個(gè)方法,起名為,在方法中我們通過(guò)系統(tǒng)配置獲取接口調(diào)用地址。 此文原本發(fā)表于我的博客 老高的技術(shù)博客 ,歡迎和老高交流! 此篇我們開(kāi)始調(diào)用接口,我們?cè)诓寮?lèi)中新定義一個(gè)方法,起名為send_post,在方法中我們通過(guò)系統(tǒng)配置獲取接口調(diào)用地址。 百度給的例子中使用了php的CURL,更...
摘要:基于使用多種數(shù)據(jù)庫(kù)儲(chǔ)存數(shù)據(jù),在許可證下發(fā)行的開(kāi)源程序,使用做版本管理。精簡(jiǎn)的是代碼架構(gòu)運(yùn)行效率,在功能擴(kuò)展性和安全性方面絲毫沒(méi)有打折扣。解析器,這是這一版新引入的解析器,也是正在使用的,主要可以保證和渲染的嚴(yán)格一致性。 showImg(https://segmentfault.com/img/bVSHIC); 在 8 月 22 日晚 20:00 的講座 【Typecho 那些事(上)】...
摘要:看起來(lái)很簡(jiǎn)單吧其實(shí)里面還是有不少坑的。激活插件方法如果激活失敗直接拋出異常禁用插件方法如果禁用失敗直接拋出異常獲取插件配置面板配置面板個(gè)人用戶(hù)的配置面板插件實(shí)現(xiàn)方法插件流程插件的基本流程是這樣的。下一節(jié)老高會(huì)更詳細(xì)的說(shuō)明插件類(lèi)的方法。 最近老高正在編寫(xiě)一個(gè)關(guān)于typecho的插件,由于typecho不像wordpress,有那么多的文檔參考,寫(xiě)一個(gè)插件還是遇到了很多的坑,不過(guò)隨著研究的...
摘要:此文原本發(fā)表于我的博客老高的技術(shù)博客,歡迎和老高交流之前啰嗦了很多,現(xiàn)在開(kāi)始寫(xiě)核心代碼。至此我們已經(jīng)拿到了文章的永久鏈接,下一步就是給百度服務(wù)器發(fā)送數(shù)據(jù)了本節(jié)完 此文原本發(fā)表于我的博客 老高的技術(shù)博客 ,歡迎和老高交流! 之前啰嗦了很多,現(xiàn)在開(kāi)始寫(xiě)核心代碼。 分析一下,發(fā)布文章的時(shí)候,我們需要的信息就是當(dāng)前文章的URL,我們需要想辦法從$contents、 $class中拿到他。...
閱讀 2639·2021-11-22 15:24
閱讀 1370·2021-11-17 09:38
閱讀 2746·2021-10-09 09:57
閱讀 1192·2019-08-30 15:44
閱讀 2439·2019-08-30 14:00
閱讀 3539·2019-08-30 11:26
閱讀 2936·2019-08-29 16:28
閱讀 746·2019-08-29 13:56