修改WordPress默认评论表情(附:跳转到多说评论框的方法)

先吐槽一下:这两天博主折腾抢票火车票去了,博客也没怎么打理,最不爽的是折腾到最后才弄到一张无座的,唉,说多了都是泪啊!铁道部你技术不行可以招标啊,干嘛拿老百姓做小白鼠呢?就你那破网站,相信大把的高手可以做得比你们好百倍,还不用浪费那么多资金!吐槽完毕。。。

之前用着大路社的主题,个人也是折腾了挺久才让功能有所完善,结果感觉加载很卡顿,而且兼容性也挺鸡肋的,比如说在 IE 内核下侧边栏及全局排版都能正常显示,而到了 Webkit 内核下就各种错排,惨不忍睹!又各种找主题,纠结了半天还是找了这款 weisay 1.61,本来想用 devework 的付费主题,结果涨价了,还是先搁着以后再说!

更换主题之后,发现一些小问题,其中一个就是发现文章界面的评论直达功能失效了,经过观察发现是启用了多说导致的,但由于技术不佳不会解决(次日已自行研究搞定,详见底部补充.),个人又挺喜欢这个功能,就只好抛弃多说,用回自带评论框。。。结果发现自带的表情真的太寒碜了,暴丑啊,只好自己动手修改下。

各位感受下:

修改前

修改后:

第①种:

第②种:

通过后台主题编辑界面,发现了 weisay 控制评论表情的 php 文件→smiley.php,但 weisay 并没有将表情打包进主题,仅仅调用了 wordpress 默认的表情文件,这样一分析,就至少有两种方法来修改自带评论框的表情咯!

一、傻瓜式替换 wordpress 默认表情(适合主题默认表情路径)

找到你喜欢的表情图片去替换 wordpress 默认表情图片即可。注意名称要一致哦!

默认表情库路径为:网站根目录/wp-includes/images/smilies

优点:简单易行,适合新手。 缺点:升级 WP 之后需重新弄。

二、主题代码修改法(提取自 weisay 主题,并补充了图片 alt 和 title)

1.在主题文件夹下新增 smiley.php 文件,然后贴上一下内容:

<script type="text/javascript" language="javascript">   
/* <![CDATA[ */  
    function grin(tag) {   
        var myField;   
        tag = ' ' + tag + ' ';   
        if (document.getElementById('comment') && document.getElementById('comment').type == 'textarea') {   
            myField = document.getElementById('comment');   
        } else {   
            return false;   
        }   
        if (document.selection) {   
            myField.focus();   
            sel = document.selection.createRange();   
            sel.text = tag;   
            myField.focus();   
        }   
        else if (myField.selectionStart || myField.selectionStart == '0') {   
            var startPos = myField.selectionStart;   
            var endPos = myField.selectionEnd;   
            var cursorPos = endPos;   
            myField.value = myField.value.substring(0, startPos)   
                          + tag   
                          + myField.value.substring(endPos, myField.value.length);   
            cursorPos += tag.length;   
            myField.focus();   
            myField.selectionStart = cursorPos;   
            myField.selectionEnd = cursorPos;   
        }   
        else {   
            myField.value += tag;   
            myField.focus();   
        }   
    }   
/* ]]> */  
</script>   
<div id="smilelink">   
<a onclick="javascript:grin(':?:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_question.gif" title="疑问" alt="疑问" /></a>   
<a onclick="javascript:grin(':razz:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_razz.gif" title="调皮" alt="调皮" /></a>   
<a onclick="javascript:grin(':sad:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_sad.gif" title="伤心" alt="伤心" /></a>   
<a onclick="javascript:grin(':evil:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_evil.gif" title="抠鼻" alt="抠鼻" /></a>   
<a onclick="javascript:grin(':!:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_exclaim.gif" title="黑线" alt="黑线" /></a>   
<a onclick="javascript:grin(':smile:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_smile.gif" title="微笑" alt="微笑" /></a>   
<a onclick="javascript:grin(':oops:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_redface.gif" title="可爱" alt="可爱" /></a>   
<a onclick="javascript:grin(':grin:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_biggrin.gif" title="奸笑" alt="奸笑" /></a>   
<a onclick="javascript:grin(':eek:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_surprised.gif" title="震惊" alt="震惊" /></a>   
<a onclick="javascript:grin(':shock:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_eek.gif" title="吓到了" alt="吓到了" /></a>   
<a onclick="javascript:grin(':???:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_confused.gif" title="撇嘴" alt="撇嘴" /></a>   
<a onclick="javascript:grin(':cool:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_cool.gif" title="酷" alt="酷" /></a>   
<a onclick="javascript:grin(':lol:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_lol.gif" title="忍不住笑" alt="忍不住笑笑" /></a>   
<a onclick="javascript:grin(':mad:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_mad.gif" title="狂骂" alt="狂骂" /></a>   
<a onclick="javascript:grin(':twisted:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_twisted.gif" title="狂怒" alt="狂怒" /></a>   
<a onclick="javascript:grin(':roll:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_rolleyes.gif" title="噢?" alt="噢?" /></a>   
<a onclick="javascript:grin(':wink:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_wink.gif" title="鼓掌" alt="鼓掌" /></a>   
<!--<a onclick="javascript:grin(':idea:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_idea.gif" title="贪" alt="贪" /></a>-->   
<a onclick="javascript:grin(':arrow:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_arrow.gif" title="⊙﹏⊙b汗" alt="⊙﹏⊙b汗" /></a>   
<a onclick="javascript:grin(':neutral:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_neutral.gif" title="鄙视" alt="鄙视" /></a>   
<a onclick="javascript:grin(':cry:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_cry.gif" title="大哭" alt="大哭" /></a>   
<a onclick="javascript:grin(':mrgreen:')"><img src="/wp-content/themes/dalushe/images/smilies/icon_mrgreen.gif" title="嘿黑" alt="嘿黑" /></a>   
</div>

然后在主题目录找到评论模块:comments.php(名称可能随主题而定),找到[textarea name=*..][/textarea],并在它的上面加上

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

保存之后基本就可以修改成功了!

特别说明下,我这个代码是原封不动贴上来的,所以路径就是指向我之前大路社主题的表情位置,各位如果需要拷贝过去的话,只需要根据实际情况修改/wp-content/themes/dalushe/images/smilies/这个路径就可以了!后面的 title 和 alt 属性可能要根据你的表情来相应修改下。

优点:自定义表情路径,就算 WP 升级也无需再次折腾。 缺点:麻烦了不少。 写到最后,博主再打包一下我所用的表情图片吧!喜欢的童鞋可以拿走拉!

第①个:大路社提取的方正行 QQ 表情(目前我所用的)

第②个:QQ 原版表情

下载地址

2014-01-07 补充采用多说时修复跳转功能的方法:

通过查看相关主题代码已自行搞定,又用回多说啦!多说在联系左邻右舍还是比邮件方便不少!下面贴下方法:

其实这跳转功能就是通过内部 id 标签来实现的,搞清楚了就非常简单,自带的评论模块是加了 id 申明的,也就是 id=respond,那么你在文章链接后面加上#respond 参数就自动跳转到评论框所在位置啦!而多说默认是没有定义这样一个 ID 的,所以我们只要在调用多说的位置给它添上一个 ID 标识就行了,具体做法如下:

打开主题目录的文章页面→single.php 找到<?php comments_template(); ?>,在包裹它 div 中加入 id="respond"就行,如下所示:

<!--评论框所在位置-->   
<div class="articles" id="respond">   
<?php comments_template(); ?>   
</div>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ImportSource

NoSQL Sharding 分片

翻译内容: NoSQL Distilled 第四章 Distribution Models 作者简介: ? 本节摘要: 各位周末好,今天我们主...

448120
来自专栏北京马哥教育

15个NoSql数据库

随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是...

43480
来自专栏蘑菇先生的技术笔记

给公司部门设计的SOA架构

23160
来自专栏网络

Uber开山基石:如何从无到有设计系统架构?

欢迎回看本文原始视频 http://t.cn/RjSC0KQ 本篇为Uber系列技术文章第一篇 今天我们解读的是Uber公司的Curis所分享的Uber架构从0...

356100
来自专栏Golang语言社区

游戏服务端究竟解决了什么问题?

当讨论到游戏服务端的时候,我们首先想到的会是什么?要回答这个问题,我们需要从游戏服务端的需求起源说起。

31540
来自专栏大魏分享(微信公众号:david-share)

VMware SDDC 分析工具介绍----第一篇

在接下来的一段时间,笔者会分享VMware SDDC体系架构中分析工具,vROps和LogInsight。由于篇幅有限,我会以连载的方式,先介绍vROps(预计...

457130
来自专栏Golang语言社区

Golang语言社区--游戏服务器端开发的一些建议(转载)

大家好,我是Golang语言社区(www.golang.ltd)主编彬哥,本篇给大家转载一篇关于游戏服务器开发的文章。

76670
来自专栏点滴积累

geotrellis使用(三十七)COG 基础介绍

前言 Geotrellis 已经迭代到了 2.0 版本(截止写作此文时为 2.0.0-SNAPSHOT 版),2.0 版多了很多新的特性,其中最重要的应该就是 ...

457140
来自专栏知晓程序

「大众点评点餐」小程序开发经验 06:解析开发工具

邹弓一,美团点评前端工程师,4年 Web 前端开发经验,现在是美团点评点餐团队的一员。

14830
来自专栏喔家ArchiSelf

解读六边形架构

追溯微服务架构的渊源,一般会涉及到六边形架构。追溯六边形架构的起源,要看始作俑者Alistair Cockburn的这篇文章 http://alistair.c...

20230

扫码关注云+社区

领取腾讯云代金券