Typecho 默认不支持 emoji 表情,其实不是程序的锅,而是由于编码的问题,只需要将默认的数据库编码 utf8 修改为 utf8mb4 即可,当然别忘了,utf8mb4 编码只有在 PHP5.5 以后才支持。

  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;
  1. 修改数据库配置文件
    网站根目录数据库配置文件config.inc.php , 下面是示例:
    $db->addServer(array (
      'host'      =>  localhost,
      'user'      =>  'youruser',
      'password'  =>  'yourpassword',
      'charset'   =>  'utf8mb4', //修改这一行 utf8 -> utf8mb4
      'port'      =>  3306,
      'database'  =>  'yourdatabase'
    ), Typecho_Db::READ | Typecho_Db::WRITE);

那么就大功告成了!!!

Last modification:August 14th, 2021 at 03:21 pm
如果觉得我的文章对你有用,请随意赞赏