时间:2021-07-01 10:21:17 帮助过:20人阅读
方法很简单,将下面我提供的这段代码放在你正在使用的主题functions.php文件中。
<?php // Make a new default gravatar available on the dashboard function newgravatar ($avatar_defaults) { $myavatar = get_bloginfo('template_directory') . '/images/tweaker.jpg'; $avatar_defaults[$myavatar] = "Tweaker"; return $avatar_defaults; } add_filter( 'avatar_defaults', 'newgravatar' ); ?>
上面代码中的/images/tweaker.jpg就是自定义默认头像的相对路径,你可以自行修改图片的地址。建议将头像放到你正在使用的主题images文件下面。
延迟加载 WordPress 评论头像
修改 HTML 结构
因为前面说到在新式浏览器中的问题, 我们不能再用一般书写 HTML 图片的方式, 而是要将占位符写到 src 属性, 而将真正的图片地址写在 data-original 属性上. 所以 WordPress 头像代码结构应该是下面这样的.
在 WordPress 中, 本来输出头像如下.
<?php echo get_avatar($comment); ?>
现在需要改为适合 Lazy Load 插件的结构如下.
<?php echo ''; ?>
这里建议使用 loading 图片或者默认头像作为占位符图片.
添加 Lazy Load 支持
打开 footer.php, 在
前添加 Lazy Load 插件和调用即可.
当然, 在这之前你还需确保你的网站已经载入 jQuery. 完整的说明可以参考我翻译的关于 Lazy Load 的文章.
使用 Lazy Load 的优缺点
为什么用要 Lazy Load? 可能使用之前你就知道, 可以延迟加载图片, 提升页面加载速度. 但其实紧紧是速度问题, 其对网站的 SEO 也很重要. 比如: 现在有某文章页面, 后面有 N 多人回复, 但这些回复者的头像与文章内容往往没有关系, 我们不希望搜索引擎收录这么多无关的图片.
换个角度, 如果我们做的是电子商务网站, 希望产品的 description 中有丰富的图文信息, 并且被搜索引擎爬取. 但这些图片往往尺寸大影响加载速度, 淘宝为了页面性能也已经全部延迟加载, 而那些对 SEO 依赖性强的平台来说这种做法未必是好事.
选择是否延迟加载图片, 要衡量内容的重要性和页面的性能, 在其中取得平衡很重要.