WordPress全局字体修改详细教程

发布于 2018-12-13  1.45k 次阅读


前言

有很多时候,Wordpress的字体不能让我们满意,这个时候我们就可以通过一些方法来修改主题的默认字体,来达到我们想要的效果。

下面介绍的更换字体主要分为两种,第一种是直接调用系统的字体,来替换原来主题的默认字体;第二种则是使用自己的字体文件,来实现字体的替换。

第一种:直接调用

这种方法通过修改CSS文件就可以实现,有些主题自带了自定义CSS样式的设置,Wordpress也提供了这一入口(后台管理->外观->自定义CSS),这时候我们就可以直接在里面填上:

*:not([class*="icon"]):not(i) {
font-family: Segoe UI, "Microsoft Yahei" !important;
}
自定义CSS样式

上面的例子就是将字体全局优先替换成Segio UI,其次替换成微软雅黑,下面列举几个比较适合阅读的字体,供大家替换,替换代码中的Segio UIMicrosoft YaHei即可。

宋体(SimSun),
微软雅黑("Microsoft Yahei"),
Arial,
华文黑体(STHeiti),
冬青黑体( Hiragino Sans GB ),
苹方(PingFang SC),
Times New Roman,
Droid Sans等。

第二种:私有字体调用

既然是私有字体,那就一定无法从公共库中直接选择,必定要上传到某个服务端来进行加载。

这里可以选择:1.上传至网站服务器 2.上传至云存储进行调用

在这之前需要先做一项准备工作,我们手上的字体文件通常只有一种格式,而为了满足不同浏览器的需要,我们需要将其扩展为五种格式,分别为.ttf .eot .woff .woff2 .svg

百度搜索就可以找到在线转换的工具,例如这个:在线字体转换

1.上传至网站服务器

这种方法面临这一种风险,中文字体库体积通常很大,比如我现在正在使用的思源黑体,一个ttf文件就有8M多,再加上国内服务器的小带宽,肯定导致网站加载时间大大加长。

将你前面准备好的五种字体格式全部上传到网站的一个文件夹内,比如我放在/fonts文件夹内,且统一命名,比如siyuan.ttf,siyuan.svg等等。

在自定义CSS样式中输入下列代码:

@font-face {
font-family: '随便一个名称,需要和下面的保持对应';
src: url('../fonts/yourfont.eot');
src:
url('../fonts/yourfont.eot') format('embedded-opentype'),
url('../fonts/yourfont.woff2') format('woff2'),
url('../fonts/yourfont.woff') format('woff'),
url('../fonts/yourfont.ttf') format('truetype'),
url('../fonts/yourfont.svg') format('svg');
font-weight: normal;
font-style: normal;
}
*:not([class*="icon"]):not(i) {
font-family: "与上面起的名字的对应" !important;
}
自定义CSS样式

个人不是很推荐这种方法,建议还是使用下面的云存储托管。

2.上传至云存储进行调用

在个人服务器上存储字体文件的话,服务器需要在加载网页,图片等的同时等待加载字体,但如果使用云存储调用的话就可以在很大程度上解决网站加载慢的问题。

云服务的话有很多选择,如果你的网站还没有开启HTTPS的话,可以去使用免费的七牛云存储,如果开启了HTTPS的话可以申请使用免费的又拍云存储或者使用收费的阿里云OSS。下面以阿里云OSS和又拍云云存储为例进行演示。

首先,将你先前准备好的四种格式的字体文件上传至你的云存储中,云储存需设置为公有读权限。

阿里云OSS

然后进入基础设置->防盗链,将你的域名添加进去,允许空Refer,记得加http(s)://,如下图所示。

防盗链

接着设置跨域规则,将你的域名添加进去,同样需要加http(s)://,允许Headers处填写*

跨域规则

接下来就可以去自定义CSS了,填写以下代码:

@font-face {
font-family: '随便一个名称,需要和下面的保持对应';
src: url('你的云存储URL/yourfont.eot');
src:
url('你的云存储URL/yourfont.eot') format('embedded-opentype'),
url('你的云存储URL/yourfont.woff2') format('woff2'),
url('你的云存储URL/yourfont.woff') format('woff'),
url('你的云存储URL/yourfont.ttf') format('truetype'),
url('你的云存储URL/yourfont.svg') format('svg');
font-weight: normal;
font-style: normal;
}
*:not([class*="icon"]):not(i) {
font-family: "与上面起的名字对应" !important;
}

至于又拍云,在云存储配置完成后使用FTP工具登陆云存储空间并进行上传后,即可使用文件的URL地址来进行使用。

XFtp界面

又拍云的云存储连接方式可参考官方文档:文件管理指南 - 又拍云存储

这样就大功告成啦,登上你的网站看看吧!

总结

由于目前还没有很全的字体库,所以第二种方法应该使用的比较多的。

如果你的服务器带宽足够大,或者开了什么加速的话,将字体文件放在网站服务器上绝对是没什么问题的,但没有的话还是建议使用一个云存储来帮助你的网站加载那庞大的字体库。

P.S.有个程序叫字蛛,可以缩小网站字体体积,不过我试了一下没有成功,大家也可以照这个方向去研究研究。


一个不专注于学习自己专业且毫无编程基础的大学生。