使Typecho支持最流行的Emoji表情
Emoji表情随着IOS的普及和微信的支持越来越常见,比如这些比较常见的表情:⭐️ ? ✨ ⚡️ ? ?。所谓Emoji就是一种在Unicode位于\u1F601-\u1F64F区段的字符。这个显然超过了目前常用的UTF-8字符集的编码范围\u0000-\uFFFF。在 MySQL 中,UTF-8只支持最多 3 个字节,而 emoji 是 4 个字节。
Typecho默认不支持emoji表情,其实不是程序的锅,而是由于编码的问题,只需要将默认的数据库编码utf8修改为utf8mb4即可,当然别忘了,utf8mb4编码只有在PHP5.5以后才支持。
简单两步即可让typecho支持emoji
1.修改数据库编码
进入PhpMyadmin,选择您的数据库,操作--》整理--》选择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.修改数据库配置文件
网站根目录数据库配置文件config.inc.php
$db->addServer(array (
'host' => localhost,
'user' => 'youruser',
'password' => 'yourpassword',
'charset' => 'utf8mb4', //修改这一行
'port' => 3306,
'database' => 'yourdatabase'
), Typecho_Db::READ | Typecho_Db::WRITE);
4.大功告成
测试一下
? ? ? ? ? ? ? ? ? ? ?
那个@姜辰 速来测试~
转载本站原创文章请注明:文章转自 挨踢路,链接: https://www.itlu.net/articles/2511.html
?我打赌我提交之后评论有50%的机会会消失。
你看,难道你有审核?上一个评论居然失踪了~
不懂怎么发那些表情,你不是有默认的表情了么?
Emoji表情是最新的表情,如微信就可以输入这些。我博客的表情就好比微信里面带的那些,还有很多微信不带但支持的
改完编码后,导出数据库sql,再导入低版本mysql,就会出错。我就只好编辑sql文件改回utf8。?
为何要使用低版本的SQL呢?
不错不错,学习了~
我来试试?
表情好酷啊,看看能不能盗了
?您这评论支持嘛?
感谢啊!已开启?。感觉不错哦!❤