解决WordPress评论表情无法显示及尺寸异常问题

    为保证安全,本站点已取消所有百度云分享链接,如有下载需要,请在评论里留下邮箱。

一、前因后果

WordPress 升级后出现的问题:

其实是因为 WordPress升级后对评论表情的重构(样式变更、名称变更、CDN机制等)造成的。

二、修复思路

表情名称重构了,所以我们需要找到那个表情过滤函数,然后改变它。我们知道评论表情里面有名为 mrgreen 的表情代号,所以最笨最有效的方法就是在 WordPress 全局搜索存在这个关键词的 php 文件(可以在 Linux 下grep,也可以在 Windows 下借用 UE 或 Editor ++等),幸不辱命,总算顺藤摸瓜找到症结所在!

①、表情名称变更

问题截图:

通过搜索,我找到了这个将代号过滤成表情文件的函数 smilies_init ,位于 wp-includes/functions.php 文件中。

老版本代码:

新版本代码:

明显把文件名称给改了,所以修复方法就是用老版代码替换新版本代码即可。

②、表情尺寸异常

解决表情不显示问题之后,发现这表情尺寸也醉了:

先让我感叹一下,老外的视力素质真的都这么好吗?反正我是觉得太小了。。。

还是老方法,全局搜索 height: 1em; max-height: 1em ,立竿见影!在 wp-includes/formatting.php 找到3处相关代码。

先手动修改后发现还是不凑效,于是继续检查,发现网站前台还输出了一个表情样式定义:

于是继续全局搜索以上代码中的关键词,于是又找到了 print_emoji_styles() 函数,在通过函数名找到调用地方,手动注释后发现可以解决问题:

接下来就是发现问题就依葫芦画瓢解决问题问题的过程,最终全部搞定!

动手能力强的朋友估计已经去折腾去了,如果你觉得这样很麻烦,那就继续往下看吧!

三、修复补丁

这样修改不但麻烦,而且一旦WP更新,统统失效,所以整理成一个php补丁,分享给大家,只要集成到主题中就可以解决这些问题了!

Wordpress升级修复补丁,解决表情异常等问题 文件大小:未知
更新时间:2017年6月2日 累计下载:58 次

将下载的文件解压,并查看代码倒数第5行中的表情路径和你主题所用表情是否对应,若不对应请自行根据实际情况修改 /images/smilies 指向你的表情文件夹即可。

然后上传到主题目录,修改主题目录下的 functions.php,在最后一个?>之前新增如下调用代码即可:

保存后,去前台刷新应该就一切正常了。

支付宝打赏 微信打赏

如果文章对您有帮助,欢迎打赏本站

未经允许不得转载:晚风深巷酒 » 解决WordPress评论表情无法显示及尺寸异常问题

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址