小弟评论里有图片可以展示出来,https://cnzhx.net/blog/wordpress-plugin-lazyload/  在这篇文章里看到simple-lazyload  这个插件,好像只能图片加载,能否实现评论里的图片也能延时加载呢?
« 最后编辑时间: 2018-12-12, 19:36:53 作者 lonelicloud »

Re: simple-lazyload 插件如何做到评论图片延时加载
« 回复 #1 于: 2018-11-10, 10:03:10 »
当然可以实现对评论里的图片执行延迟加载。我没有弄过,这里只给你提供几个思路。但是具体到你用的这个插件的话,我建议你去该插件的支持论坛里提问,这样可能有更大的几率得到好的解决方案。

根据我的观察,似乎 simple-lazyload 已经部署了全页 lazy load 支持。或许你只需要在对应的设置里面启用就可以了?见其源代码的第 49 行,
程序代码: [选择]
function simple_lazyload_obstart() {
ob_start('simple_lazyload_obend');
}

下面是自动动手实现可以参考的思路:

1/ 根据 Lazy Load 插件的介绍,你甚至可以通过添加一个语句来让它对全站的图片--当然也包括评论里面的--都实现延迟加载。参见 https://wordpress.org/plugins/lazy-load/#description 里面 FAQ 的问题三「How do I lazy load other images in my theme?」

2/ 采用 Lazy Load 插件中处理文章内容的方法,如,
程序代码: [选择]
add_filter( 'the_content', array( __CLASS__, 'add_image_placeholders' ), 99 );来增加一个针对评论内容(comment_text)的加工,类似于,
程序代码: [选择]
add_filter( 'comment_text', array( __CLASS__, 'add_image_placeholders' ), 99 );
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!

Re: simple-lazyload 插件如何做到评论图片延时加载
« 回复 #2 于: 2018-11-10, 18:05:59 »
感谢!我刚测试了是全站延时了。

有个小小的问题哈,我不想让一张图延时,怎么排除呢?

Re: simple-lazyload 插件如何做到评论图片延时加载
« 回复 #3 于: 2018-11-11, 11:23:38 »
有个小小的问题哈,我不想让一张图延时,怎么排除呢?
这个我不知道有什么简单的方法来实现。你也看到了,插件是利用正则表达式来批量替换图片标签为需要的延迟加载格式。要在这个批量替换的时候判断是否为你需要排除的那张图片,似乎资源开销比较大。也就是说我觉得这个方法是可以做到的,但是不值得。

我不知道有没有更简单的方法。
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!

Re: simple-lazyload 插件如何做到评论图片延时加载
« 回复 #4 于: 2018-11-11, 16:42:08 »
感谢!