如何在php中加载本地字体,而不是使用Variable加载谷歌字体



随着GDPR的严厉打击,我不得不从谷歌服务器中删除每个链接加载的谷歌字体。

我有一个wordpress主题,在任何地方都有这些链接。我不太擅长php,但在这个主题中,我有这样的链接:

$open_sans_font_url = "https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,300,400,600&subset=$subsets&display=fallback";
}

我将加载的字体放入一个变量中。我需要更改它,以便它从我的本地字体文件夹加载字体。

问题是,我不知道如何更改链接,使其加载所有字体和字体权重/样式。有可能吗?也许这很容易,但我无法更改整个php文件——我没有足够的知识,我不想冒险破坏主题。

(我知道@font face和css,但不知道如何在var中添加链接(

我感谢你的帮助,谢谢!

由于变量链接到CSS文件,因此不可能简单地替换它。关于你能做什么有两种选择。由于缺乏更多的代码,我只能描述如何做到这一点,而不能提供直接的例子。

方法一:使用现有的CSS,删除变量

您可以使用前面提到的@font face将OpenSans字体添加到您自己的CSS中,然后删除使用$open_sans_font_url变量的位置。

这个变量很可能只用于创建一个<link rel="stylesheet" href="...">标记,以包含Google字体。如果删除此样式表包含和变量的其他可能用法,则不再使用Google字体。

方法二:使用自己的CSS文件和字体

为此,您需要创建自己的CSS文件,例如opensans.css,并加载字体。然后,您可以使用Wordpress函数get_template_directory_uri()在如下主题中获取新CSS文件的地址:

$open_sans_font_url = get_template_directory_uri() . '/opensans.css';

我希望这能有所帮助!

我遇到了同样的问题,我通过切换到BunnyCDN字体解决了这个问题,BunnyCDN是谷歌字体的克隆,(与谷歌字体不同(完全匿名处理请求。

https://fonts.bunny.net

https://css-tricks.com/bunny-fonts/

最新更新