国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

給Dedecms評論增加表情功能_DedeCms教程

2024-08-30 19:09:55
字體:
來源:轉載
供稿:網友

最近用dedecms做了個站,覺得dede的評論系統不太好用,就自己對它進行了一番改造,增加了表情、QQ秀、ajax無刷新等功能。國內有一大批站長用的是dede,今天我先分享下怎樣為評論加上表情。

首先大家思考一下怎樣才能讓dede評論里面顯示表情圖片?直接內容里面寫<img src="********" />肯定是不行的,dede會在保存評論前把它轉換成普通的文本。我們要的是要保證以后能順利升級,所以盡量不改dede的系統文件。

現在換個思路,看看那些論壇,它們添加表情的時候都是添加的一個表情標記,發帖后就變成表情圖片了。看來是在保存帖子的時候對表情標記做了轉換。咱們也來依葫蘆畫瓢。

先找一個表情圖片傳到服務器上,假設是在http://www.qqsvr.com/01.gif,表情標記假設為[em01],現在我只要讓dede在保存評論的時候把[em01]轉換成<img src="http://www.qqsvr.com/01.gif" />就行了。

這里又涉及到2個問題,是先轉換之后再保存,還是直接保存,顯示的時候再轉換?

如果轉換之后再保存,也就是說你的數據庫里存的是<img src="http://www.qqsvr.com/01.gif" />,這個鏈接就固定了,你的表情目錄就不能變了,而且這必需改dede的系統文件才行。

如果是顯示的時候再轉換,那你的數據庫里就保存的是[em01]這樣的表情標記,顯示的時候根據模板規則進行轉換,非常靈活,而且不用改dede的系統文件,只需要改模板就行了。只是顯示一次就要轉換一次,會增加一點兒系統負擔。

我們用第二種方法。打開templets/plus/feedback_templet.htm,這個是dede的評論系統模板,我們發現它里面是可以直接寫php代碼的,<?php echo $row['msg']?>這里就是輸出的評論內容。先把它改成<?php echo convertem($row['msg']) ?>。

convertem()就是轉換表情的方法,就是用它把[em01]轉換成<img>標記,現在我們要給這個方法寫點內容,讓它按我們的意思來轉換。

還是這個文件,在頂部添加
<?php
function convertem($message){
$message = str_replace('[em01]','<img src="http://www.qqsvr.com/01.gif" />', $message );
return $message;
}
?>

這里的str_replace可以進行替換操作,比如str_replace(A,B,C)大概意思就是把C里面的A替換成B。
所以我們用convertem($row['msg'])就能把$row['msg']里面的[em01]給替換了。

現在你在評論里輸入[em01],發表,應該能看到顯示的圖片了。不過這還沒完,你總不可能讓用戶也要輸入代碼才能發表情吧?所以你還得找個合適的地方,加上
<img src="http://www.qqsvr.com/01.gif" onclick="javascript:document.getElementById('msg').value+='[em01]';" />

用戶點擊這個圖片后,會自動在評論框里加上[em01]。

這就大功告成了,其實從頭到尾只改了feedback_templet.htm這個模板就實現了表情功能。

附圖

 給Dedecms評論增加表情功能.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁南县| 驻马店市| 社会| 鲁山县| 华坪县| 贵南县| 贞丰县| 曲周县| 新乡县| 马公市| 巴林左旗| 鄄城县| 玉林市| 米易县| 嘉黎县| 军事| 贞丰县| 武定县| 江安县| 龙川县| 郎溪县| 错那县| 杭锦旗| 阳东县| 广宁县| 上虞市| 衡东县| 塔城市| 资兴市| 台东市| 北川| 疏附县| 葵青区| 久治县| 民县| 六安市| 南投市| 枞阳县| 金堂县| 涿鹿县| 吴旗县|