延迟加载功能添加了新的Doctype

时间:2013-08-27 15:52:07

标签: wordpress

我有一个图像沉重的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”元素,但它会以新的Doctypehtmlbody元素包围它们。

是否可以在没有新imgDoctypehtml的情况下创建“body”元素。

0 个答案:

没有答案