MIP 十分关注页面速度,也因此禁用了一些引起拖慢速度的 HTML 标签(禁用列表)。例如, 标签会引起浏览器的 repaint 和 reflow,为了避免这些,MIP 提供了替代标签 <mip-img> 。下面是dedecms开发中img转img-mip的处理方法。

在/include/extend.func.php最后面添加如下代码

function mip($content){
    global $cfg_basehost;
    preg_match_all('/<img (.*?)\>/', $content, $images);
    if(!is_null($images)) {
        foreach($images[1] as $index => $value){
            $mip_img = str_replace('<img', '<mip-img', $images[0][$index]);
            $mip_img = str_replace('>', '></mip-img>', $mip_img);
            $mip_img = preg_replace('/(width|height)="\d*"\s/', '', $mip_img );
            $mip_img = preg_replace('/ style=\".*?\"/', '',$mip_img);
            $content = str_replace($images[0][$index], $mip_img, $content);
        }
    }
    preg_match_all('/ style=\".*?\"/', $content, $style);
    if(!is_null($style)) {
        foreach($style[0] as $index => $value){
            $mip_style = preg_replace('/ style=\".*?\"/', '',$style[0][$index]);
            $content = str_replace($style[0][$index], $mip_style, $content);
        }
    }
    $content = str_replace('/uploads/', $cfg_basehost.'/uploads/', $content);
    return $content;  
}

内容页模板标签写法

{dede:field.body function=mip(@me)/}

最后打个广告:本叼操刀的织梦MIP模板(点这里