WordPress 技巧:让 WordPress 真正支持 jQuery Lazyload

看到很多人在网上说 jQuery lazyload 插件没效果,看了下插件主页说要把图片的地址写入 data-original 属性,loading 图片地址写入 URL 属性就能实现真正图片稍后载入(lazyload)。

如果每张图片都这么改,非常不方便,并且图片在 Feed 中也无法查看,那么我们可以通过 WordPress 强大的 filter Hook,用正则表达式重组一下 img 标签就行了。于是花了点时间写了个貌似很强大代码:


add_filter ('the_content', 'lazyload');
function lazyload($content) {
	if(!is_feed()||!is_robots) {
		$content=preg_replace('/<img(.+)src=[\'"]([^\'"]+)[\'"](.*)>/i',"<img\$1data-original=\"\$2\" src=\"loading1.gif\"\$3>\n<noscript>\$0</noscript>",$content);
	}
	return $content;
}

把这段代码扔到当前主题的 functions.php 中,再把 loading1.gif 这个图片地址换成你的 loading 图片地址。再按潜行者m的这篇文章配置下站点的 jQuery 就搞定了。

详细效果,请查看示例

热门文章