最近在给主题加使用iphone的快捷指令发博客动态说说
因为经常在聊天的时候经常打出emoji表情
所以在发布博客动态说说的时候,发现博客不支持emoji表情
自己折腾了一下,实现了,下面分享方法给有需要的朋友
简单科普
Emoji是一种在Unicode位于u1F601-u1F64F区段的字符,超过了目前常用的UTF-8字符集的编码范围u0000-uFFFF。在MySQL中,UTF-8只支持最多3个字节,而emoji是4个字节。所以typecho默认不支持emoji表情,是由于数据库编码的问题,MYSQL在5.5.3以后的版本中加入了utf8mb4支持,所以核心点是我们只需要将默认的数据库编码utf8修改为utf8mb4即可
第一步、备份你的数据库[非常重要]
如题,备份你的数据库!
第二步、修改数据库编码
进入PhpMyadmin,选择您的数据库
这里我使用的是宝塔面板,还是比较好操作的
具体步骤分别是:
操作-整理-选择utf8mb4_unicode_ci
第三步、修改数据库表编码
使用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;
第三步、修改数据库配置文件
找到网站根目录下的config.inc.php,使用文本编辑器打开
大约在第60行, 将 'charset' => 'utf8'修改为'charset' => 'utf8mb4';
修改好后保存文件
此时typecho已经支持emoji表情了