Typecho 默认不支持 emoji 表情,是由于编码的问题,只需要将默认的数据库编码 utf8 修改为 utf8mb4 即可,不过 utf8mb4 编码在 PHP5.5 以后才支持。
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 表情了。