我也来一把:不用插件在评论显示自带表情

早就看到有很多文章教wordpress中不用插件在评论显示自带表情的方法,我也一直跃跃欲试。

JS我完全不懂的(当然,其实不是JS完全不懂,而是任何语言都是完全不懂,啥都没学过……),不过现在大多都提供了现成的文件可以直接下载,所以也还蛮方便的。

我随便看了下几家的成果,好像具体的语句上有些差别。

看人家的说法好像是WILLIN大大的比较简明扼要,我就去他家下了:

http://willin.heliohost.org/?p=1268

顺便说说自ATBHOST轰然倒下后,我当时第一反应就是担心找不到WILLIN的新家,好在他也转投heliohost下了,哈哈哈哈。

按照指点我下载了SMILEY.PHP文件并放到了主题所在文件夹。然后在comments.php中的适当位置添加了:

1
<?php include(TEMPLATEPATH . '/smiley.php'); >

刷新页面看到评论内容上面果然多出那行自带表情了。

我自以为大功告成,结果点击了一个表情,却返回了一个“false”给我看。

这下头大了。

我只好打开smiley.php文件看,虽然我不懂,好歹我也看到了那句:

1
2
else {
return false;

回想起willin提到的原创作者酷米小客的文章里(http://blog.9-i.cn/log/631988.html)似乎有讲到一点原理,我又依次找回去看。

经过一番思考加猜测,我想问题一定是出在跟document.getElementById这句有关的方面。

于是搜索了一下这句,果然说IE和FF对这句有时候出来的效果有异。MS在对于“name”和“id”有混淆的情况。

我本身用FF的,于是这时改用IE打开页面,果然就是没有问题的。

好吧,再回头去comments.php里面找原因吧。

检查的重点当然是form action什么什么的那一句和textarea name什么什么的这2句,因为感觉原创作者就是通过这2句来抓东西的。

接下来只能随便试试了。具体过程不赘述,因为自己也不记得试过哪些了。总之最后:我发现我的评论页中textarea name这句里有name=”comment”,但没有id相关的,就自作主张加了句id=”comment”,然后就神奇地好了。IE跟FF都正常了。

结果好一切好吧。改天再去弄套好看点的表情替换一下了。





本文来源:随便翻翻
原文地址:http://anyff.com/2009/11/comments-emoticon/

你可以留言,或者trackback 从你的网站

4 条评论

  1. 万戈 说道:

    我也用上了耶,确实不错

  2. willin 说道:

    收到 trackbacks, 特來參觀. 沒錯! id=”comment” 才能動作, 現在的模板沒 id=”comment” 還真是少啊~

    • 姐姐大人 说道:

      我开始也没想到是comments模板的问题。之前为了用上你家的《WordPress 內置嵌套評論專用 Ajax comments》,我担心自己的评论页万一不标准有问题,就用wordpress那个default主题中的评论页面替换掉自己用的模板的评论页,因为我以为默认主题应该比较标准的,嘿嘿嘿,没想到它真的就缺这个id=”comment”。。。

Leave a Reply