我要投稿 | 网站地图 专注WordPress建站学习!
WordPress教程网
热门标签: wordpress wordpress教程 wordpress插件 wordpress函数 wordpress主题 functions

教程

当前位置:首页> 教程

HTML压缩和GZIP压缩代码优化

来源(作者):互联网   发布时间: 2019-11-07  游览次数:18次
今天给大家讲讲wordpressHTML压缩和GZIP压缩代码优化让大家的wordpress跑的更快吧,本教程HTML压缩和GZIP压缩代码优化覆盖含量挺多的大家可以慢慢学习HTML压缩和GZIP压缩代码优化。 HTML压缩
/*压缩html代码*/ 
function wp_compress_html()
{
function wp_compress_html_main ($buffer)
{
    $initial=strlen($buffer);
    $buffer=explode("<!--wp-compress-html-->", $buffer);
    $count=count ($buffer);
    for ($i = 0; $i <= $count; $i++)
    {
        if (stristr($buffer[$i], '<!--wp-compress-html no compression-->'))
        {
            $buffer[$i]=(str_replace("<!--wp-compress-html no compression-->", " ", $buffer[$i]));
        }
        else
        {
            $buffer[$i]=(str_replace("\t", " ", $buffer[$i]));
            $buffer[$i]=(str_replace("\n\n", "\n", $buffer[$i]));
            $buffer[$i]=(str_replace("\n", "", $buffer[$i]));
            $buffer[$i]=(str_replace("\r", "", $buffer[$i]));
            while (stristr($buffer[$i], '  '))
            {
            $buffer[$i]=(str_replace("  ", " ", $buffer[$i]));
            }
        }
        $buffer_out.=$buffer[$i];
    }
    //$final=strlen($buffer_out);
    //$savings=($initial-$final)/$initial*100;
    //$savings=round($savings, 2);
    //$buffer_out.="\n<!--压缩前的大小: $initial bytes; 压缩后的大小: $final bytes; 节约:$savings% -->";
    return $buffer_out;
}
ob_start("wp_compress_html_main");
}
add_action('get_header', 'wp_compress_html');
压缩页面会衍生出一些问题,比如说,某些位置的某些特效失效了,如果你主题文件中某一段代码不想被压缩,或者文章中有不想压缩的内容,可手动添加不压缩代码段。 解决方法:
<!--wp-compress-html-->
<!--wp-compress-html no compression-->
此处代码不会被压缩,主要是避免压缩带来的错误,比如JS错误
(//文章中在文本模式下添加)
<!--wp-compress-html no compression-->
<!--wp-compress-html-->
顺带再说一个技巧,如果博客使用了Crayon Syntax Highlighter高亮插件,那么启用代码压缩之后,你会发现在文章页面双击代码切换到纯文本模式时,会发现代码全挤在一团了!好吧,全都给压缩了。 解决办法: 将以下代码加入到主题functions.php当中,当检测到文章内容中有代码标签时,文章内容不会被压缩:
//判断文章中是否有代码,有代码不压缩
function unCompress($content) {
if(preg_match_all('/(crayon-|<\/pre>)/i', $content, $matches)) {
$content = '<!--wp-compress-html--><!--wp-compress-html no compression-->'.$content;
$content.= '<!--wp-compress-html no compression--><!--wp-compress-html-->';
}
return $content;
}
add_filter( "the_content", "unCompress");

本文版权归原作者所有,转载请注明原文来源出处, WordPress教程网 感谢您的支持!

本文链接: http://www.wpabc.net/492.html

WordPress教程网
WordPress教程网
相关内容