我有一个图像重的 WordPress 网站。
我想使用lazyload
插件来加载图像。
该插件需要一个 ' img
' 元素,如下所示:
<img data-original=“img/example.jpg” src=“img/grey.gif” width=“640” height=“480”>
WordPress的输出是:
<img class="" alt="" src="img/example.jpg" width="440" height="664" />
我正在使用这个函数来创建所需的 ' img
' 元素:
function add_lazyload($content) {
$dom = new DOMDocument();
@$dom->loadHTML($content);
foreach ($dom->getElementsByTagName('img') as $node) {
$oldsrc = $node->getAttribute('src');
$node->setAttribute("data-original", $oldsrc );
$newsrc = ''.get_template_directory_uri().'/images/placeholder.png';
$node->setAttribute("src", $newsrc);
}
$newHtml = $dom->saveHtml();
return $newHtml;
}
add_filter('the_content', 'add_lazyload');
这会创建img
我需要的 ' ' 元素,但它会将它们包围在一个新的Doctype
,html
和body
元素中。
是否可以在img
没有新的Doctype
,html
和body
.