让Typecho支持Emoji表情
之前收到几位博友的反馈,说他们发表的评论不是没有了就是少一段,还问是不是被我删掉了?博友们的评论我怎会舍得删呢,但是发广告和毫无营养的评论绝不手软,当时我是一头雾水不懂哪出了问题,
最近留意到挨踢路一篇文章提到emoji表情,回想几位博友当时反应的情况总算找出导致评论异常的原因了;
Typecho默认不支持emoji表情是由于编码的问题,只需要将默认的数据库编码utf8修改为utf8mb4即可,不过utf8mb4编码在PHP5.5以后才支持。
Emoji是一种在Unicode位于u1F601-u1F64F区段的字符。这个显然超过了目前常用的UTF-8字符集的编码范围u0000-uFFFF。在MySQL中,UTF-8只支持最多3个字节,而emoji是4个字节。这就导致如果你不修改数据库的话,typecho是无法支持Emoji表情的。
当然好消息是utf8mb4其实是完全兼容utf-8,修改后不会影响现有数据及后期数据。
1.修改数据库编码
在PhpMyadmin中选择typecho数据库,操作-->排序规则-->选择utf8mb4_unicode_ci然后执行。
2.修改表编码
执行以下sql语句
alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_unicode_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_unicode_ci;
3.修改typecho配置文件config.inc.php
拉到最下面找到这一行
'charset' => 'utf8',
修改为
'charset' => 'utf8mb4',
Typecho就可以使用emoji表情了,赶紧评论试试吧,搜索emoji表情还真不少.
✨🎋🎍😀😃😄😁😆😅🤣😂🙂🙃😉😊😇🥰😍🚢✈️
更改所有表排序规则要选上吗?
没注意呢,那么久都忘记了,哈哈。
你好,请问第二步的修改表编码是在后台修改吗?还是在数据库里修改?我用的是宝塔面板搭建的。还请指教一下,谢谢!
进入数据库里执行命令修改,是SQL里,仔细看教程不难.
我来凑凑热闹???
不错不错,支持下哈
我的网站也是支持emoji的,但是我每次一升级,好像就出问题。
emmm
我忘了是数据库升级还是PHP升级,总有一个是罪魁祸首。
呵呵佛系对待随他去吧,能用就行好哈。
我都想用typecho了
欢迎来撩,据可靠消息称夏天会有新版本上线…
新版本我看到70在他的站说过了?
嗯嗯,不过发布了也得观察一段时间,如果太折腾就暂时不升适合自己就好。
好羡慕你们这些一上来就用命令修改的。。。
好羡慕你们这些能用表情评论的。。。
很显然你是被以上看似牛逼的代码忽悠了,都是照葫芦画瓢要自己操作单词都不会几个…?原创才是牛人。
影不影响升级呢
问题应该不大,毕竟楼下那位兄弟已经修改,搞不定在找他帮帮忙。
文章好像是许久之前的了。。。
最近搜索emoji表情在翻了遍,也解决了评论异常的问题。
表情不表情的,也还好啦,问题不大,主要是沟通方便。
主要是支持了,至于用不用都是浮云
贵博的主题好简洁!
您的也不赖
你得搞个按钮放在评论框旁边
技术有限,没打算放出来。
Emoji,21世纪的甲骨文,折腾,让博客更美好。
21世纪的甲骨文比喻很贴切,貌似已成各界公认表情。
这个贴心
主要是为了避免评论异常
测试一下,🦠💐🌸⛷️🏂🌹🥀🌺🎎🎏🔉🌴🌵🌿🕰️🌡️🍁🍂
测试成功,嘿嘿~
一直以为你用的是WP,还在纳闷你的站咋这么快呢?
话说我在这里发评论咋从没有看到有表情呢?歧视我。。。。
这就是你的不对咯没认真看题,标题写的是支持不是添加,因为很多输入法自带这些表情,是一种编码可以直接复制并不是图片得…
好吧,我的错!以为你直接把表情植入进来了呢!🤣😂
感觉带不带表情没有太大必要
输入法自带的表情可有可无,只是为了防止某些博友评论时异常…
这篇教程很不错,解决了很多人的燃眉之急。我一般都不加这个,都是用输入法来打
嘿,是用输入法打出来,原本程序不支持这些表情,修改后就可以了并不是添加表情…
不知道mariaDB有没有这个问题,可能是我没有发现
可以自己试一试评论
去年我用WP就遇到过类似情况,以后转主机的时候要注意数据库格式
噢,记住了感谢提醒。