Typecho支持emoji
  闲聊   2次评论  1300次阅读  366字数  预计阅读时间1分钟

Typecho支持emoji

  闲聊  2次评论  1300次阅读  366字数  预计阅读时间1分钟

写blog没有emoji会不会少很多东西呢?那必然啊,尤其当你是一名,希望把技术博客写的轻松一些的博主,那可能很有必要了,即使你可以选择不用他~💯 💞

原理

所谓Emoji就是一种在Unicode位于u1F601-u1F64F区段的字符。这个显然超过了目前常用的UTF-8字符集的编码范围u0000-uFFFF。在 MySQL 中,UTF-8只支持最多 3 个字节,而 emoji 是 4 个字节。

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

所幸,utf8mb4是utf-8的超集,完全兼容utf-8,修改后,不会影响现有数据。

(熟悉我的都知道,这部分内容看个热闹就行,正餐在下面)

话不多说,上正餐

数据库编码修改

进入PhpMyadmin,选择数据库,操作——整理——选择utf8mb4_unicode_ci

数据库表编码修改

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;

在语句中运行以上sql语句代码

如果你不知道如何执行,最好在宝塔界面,图形化界面,很好操作,瞧这里,下图左下角的小终端(确实不太显眼)

最后一步

打开网站根目录config.inc.php配置文件找到以下代码:

'host'      =>  localhost,
'user'      =>  'youruser',
'password'  =>  'yourpassword',
'charset'   =>  'utf8mb4', //将utf8修改为utf8mb4

打开你的网站文章,来两个emoji试试吧🤣

对了

对了,给个花絮,emoji资源,可直接在md文件使用

抑或者,pc端移动端的emoji皆可

Post new comment
  1. 我记得好像有直接在functions.php添加就行的

      Windows 10  Chrome 80 回复
    1. @山卜方

      酱紫,我去找下教程

        OSX  Chrome 79 回复