rarerloop/wp-font-fout
该软件包最新版本(v1.0.0)没有可用的许可证信息。
优化字体加载,生成一个 FOUT 而不是 FOIT
v1.0.0
2015-12-16 14:04 UTC
Requires
- php: >=5.5.0
This package is auto-updated.
Last update: 2024-09-12 04:20:55 UTC
README
WordPress 插件,允许浏览器在使用网页字体时显示无样式文本的闪光(FOUT)。
设置
安装并激活插件,然后告诉插件要监听哪些字体族
<?php // functions.php Rareloop\FontFout::init([ 'PT Serif', 'Open Sans', ]);
这将向您的 <body>
底部添加所需的内联 JavaScript。当所有字体加载完毕后,fonts-loaded
类将添加到您的 <html>
元素中。您可以使用此功能在 CSS 中控制何时使用网页字体
body { font-family: 'Georgia, serif'; } .fonts-loaded body { font-family: 'PT Serif, Georgia, serif'; }
更多配置
init
函数还接受额外的参数,允许您控制创建以了解字体何时加载的 cookie。如果您想将 cookie 名称更改为 _fonts_cached_in_browser
并使其持续 30 天,可以执行以下操作
<?php // functions.php Rareloop\FontFout::init(['PT Serif'], '_fonts_cached_in_browser', 60 * 60 * 24 * 30);
针对未来页面视图进行优化
注入到您页面中的 JavaScript 会在所有字体加载完毕后设置一个 cookie。一旦加载完毕,您就可以假设用户的浏览器已经缓存了该字体,因此不需要再次下载。在这种情况下,您可以在将其发送到浏览器之前将 fonts-loaded
类添加到您的 <html>
元素中。
要在模板中添加此优化,您可以使用以下短代码
<!DOCTYPE html> <html class="no-js [fontfout-htmlclass]"> <head> <title>...</title> </head> <body> ... </body> </html>
短代码仅在检测到 cookie 时添加类。它还会防止注入内联 JavaScript,减少未来页面加载的负载。
该插件添加了以下 cookie:fonts-loaded
,您应将其添加到您的 Cookie/隐私策略中。