Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >让typecho支持emoji

让typecho支持emoji

作者头像
老高的技术博客
发布于 2022-12-27 07:19:57
发布于 2022-12-27 07:19:57
4960
举报

这年头文章里加个emoji很正常吧,但是typecho貌似之前没有考虑到,没有原生支持emoji,但是这怎么能难倒我们勤劳的码农呢!

utf8mb4需要 Mysql5.5.3+ 版本的支持,mb4 = most bytes 4,utf8是utf8mb4的子集,所以不需要额外的转换。

新站

如果是新建站,那么一定要在建立数据库的时候就制定当前数据库的编码为utf8mb4 + utf8mb4_general_ci。这样默认建表的编码就全部为utf8mb4了,最后修改config.inc.php文件中:

代码语言:javascript
AI代码解释
复制
/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
$db->addServer(array (
  'host' => '1.2.3.4',
  'user' => 'root',
  'password' => 'phpgao',
  'charset' => 'utf8mb4',  # ----> 这一行如果不是utf8mb4请修改为 utf8mb4
  'port' => '3306',
  'database' => 'phpgao',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);

完事儿

旧站

首先修改数据表编码:

代码语言:javascript
AI代码解释
复制
# typecho_baidusubmit是老高百度文章提交的表
alter table typecho_baidusubmit convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_general_ci;

然后也需要修改config.inc.php文件,方法同新站,不再赘述。

至此,你的站点就已经支持emoji了,但是在不支持emoji的平台下表情会变为方框。

mysql

添加到mysql.ini文件中,可以让utf8mb4更好地工作。

代码语言:javascript
AI代码解释
复制
[client]  
default-character-set=utf8mb4  
  
[mysqld]  
character-set-server = utf8mb4  
collation-server = utf8mb4_general_ci  
init_connect='SET NAMES utf8mb4'  
skip-character-set-client-handshake = true  
  
[mysql]  
default-character-set = utf8mb4  

补充

github等一大波版本工具都支持emoji了,你还在等什么!?

EMOJI CHEAT SHEET

Rerfer:

  • MySQL数据库字符集由utf8修改为utf8mb4一例
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-12-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
typecho支持emoji
今天也是突发奇想的购买更换了一个主题,虽然破费了我兜里仅有的58r。但有一说一的是这主题确实不错,唯一不足之处就是没能让作者把他的审美传授给我
是小北a
2022/03/28
7440
typecho支持emoji
Typecho中emoji表情不显示
Typecho 默认不支持 Emoji 表情,由于编码的问题而造成,我们只需简单两步即可让 typecho 支持 emoji 表情评论,只要将默认的数据库编码 utf8 修改为 utf8mb4 即可。
qiangzai
2021/12/21
6870
Typecho中emoji表情不显示
如何在Typecho显示Emoji表情
解决方法 1.先进入数据库面板,点击SQL运行下列语句(粘贴SQL语句执行即可): SQL语句 alter table typecho_comments convert to character
RJ1027
2021/08/09
1.2K0
如何在Typecho显示Emoji表情
解决Typecho带有Emoji表情Database Query Error报错的处理方法!-星泽V社
今天写文章的时候插入emoji表情竟然「Database Query Error」报错,Typecho 默认不支持 Emoji 表情,这不是程序的锅,而是由于编码的问题造成。 Emoji 是一种在 Unicode 位于u1F601-u1F64F区段的字符。这显然超出了目前常用的 UTF-8 字符集的编码范围u0000-uFFFF。 在 MySQL 中,UTF-8 只支持最多 3 个字节,而 Emoji 是 4 个字节。所以评论中带有 Emoji 表情才会报错。
星泽V社
2022/03/02
1.2K0
解决Typecho带有Emoji表情Database Query Error报错的处理方法!-星泽V社
让Typecho支持Emoji
本文作者:博主: gyrojeff    文章标题:让Typecho支持Emoji 本文地址:https://gyrojeff.top/index.php/archives/17/ 版权说明:若无注明,本文皆为“gyro永不抽风!”原创,转载请保留文章出处。 许可协议:署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 转载请保留原文链接及作者! 我的博客即将同步至腾讯云+社区,邀请大家一同入驻
gyro永不抽风
2021/05/21
7160
typecho使用emoji表情
1.什么是emoji表情 2.登录phpmyadmin 3.修改服务器连接排序规则 4.选择博客的数据表进行更改 5.总结
笔记堡-堡主
2023/03/04
8290
typecho使用emoji表情
搭建Typecho博客
https://qqdie.com/plugins/ https://plugins.typecho.me/
MiChong
2020/09/24
1.5K0
搭建Typecho博客
typecho 博客小表情无法显示问题
typecho 博客建立完成之后,会发现如果插入一些小表情,页面渲染完之后,表情不会显示,并且表情之后的内容全部消失,导致体验感很差。
子舒
2022/06/09
7390
让Typecho支持 emoji 的显示
今天有用户反应文章发出后显示不全,我第一时间就想到是自己模板外链转内链功能的bug,因为之前有人反馈过,后来我修复了,我以为还是它有问题,排查了下后发现并不是,然后后台一看文章内容,发现基本全消失了,这就让我想起来hran大佬2015年发过的文章,于是乎转载之
泽泽社长
2023/04/17
3350
使Typecho支持最流行的Emoji表情
Typecho默认不支持emoji表情,其实不是程序的锅,而是由于编码的问题,只需要将默认的数据库编码utf8修改为utf8mb4即可,当然别忘了,utf8mb4编码只有在PHP5.5以后才支持。 简单两步即可让typecho支持emoji
逍遥子大表哥
2021/12/17
7710
使Typecho支持最流行的Emoji表情
存储emoji表情或特殊字符报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')
我在一篇文章中使用了emoji表情,前面很顺利,不管是WordPress还是其他博客园啥的,都是正常发送。
JanYork_简昀
2022/05/18
7450
存储emoji表情或特殊字符报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')
Typecho添加emoji表情
1、修改数据库编码 在PhpMyadmin中选择typecho数据库,操作-->排序规则-->选择utf8mb4_unicode_ci然后执行。 或者在服务器中执行(通用版 ) 首先在服务器中执行
云计算小黑
2022/12/28
6020
Typecho发布文章Database Query Error-星泽V社
刚才发布文章出现 Database Query Error,百度了问题,原因是 Typecho 在初始化数据库的时候,选用了 UTF-8 的编码,而在 MySQL 中,UTF-8 只支持最多 3 个字节,而 emoji 是 4 个字节,所以出现该问题。如果嫌麻烦可以直接删掉 emoji 就可以成功发表了。
星泽V社
2022/04/14
1.8K0
Typecho发布文章Database Query Error-星泽V社
基于龙芯的Linux源码学习 | 入门篇
最近在中标麒麟实习,自己对 Linux 本身也有一定爱好,使用过不少的 GNU/Linux 发行版,正好看到陈华才老师新出版了《基于龙芯的 Linux 内核探索解析》一书,于是也下载源码跟着老师一同学习,博客开这个大坑也是准备记录自己的学习历程。
uniartisan
2022/03/03
7730
建情人节表白网站(超详细过程,包教包会)
声明:此文章以经过原作者允许进行的二次创作,原作者的博文如下,感谢作者Veen Zhao,带来漂亮的主题
wresource
2022/07/31
1.3K0
建情人节表白网站(超详细过程,包教包会)
两行代码使typecho支持Emoji表情
说明最近实在不知道该写些啥了,由于主题的自带表情还是较为缺少,于是我自己添加了一些表情,所以在此分享一下表情添加方...
Xcnte
2021/12/14
7520
Mysql存储微信Emoji表情问题
上面错误意思是 mysql 数据库中 name 字段插入不正确的字符串值。name 字段是记录微信呢称,设计之出没有考虑到微信呢称中使用 Emoji 表情,导致写入数据失败。
YP小站
2020/06/04
2.4K0
Java之mysql/Java服务端对emoji的支持
如果UTF8字符集且是Java服务器的话,当存储含有emoji表情时,会抛出类似如下异常:
IT工作者
2022/03/29
4440
mysql存储emoji问题
前一段时间,项目中需要在数据库中存储emoji,由于编码格式不对,直接导致数据库报错,后来修改mysql的编码,就解决了
lin_zone
2018/08/15
9900
MySQL字符集修改实战教程
在 MySQL 中,系统支持诸多字符集,不同字符集之间也略有区别。目前最常用的字符集应该是 utf8 和 utf8mb4 了,相比于 utf8 ,utf8mb4 支持存储 emoji 表情,使用范围更广。本篇文章将会介绍 utf8 修改成 utf8mb4 字符集的方法。
MySQL技术
2021/01/05
2.8K0
相关推荐
typecho支持emoji
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场