最近在给主题加使用 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 表情了
![图片[1]|如何让typecho支持emoji表情|不死鸟资源网](https://www.busi.net/wp-content/uploads/2025/06/20250615115222220-image.png)