WordPress前端Html网页代码压缩优化

 2017年3月24日 |  0 条评论 |   430

为了优化网站的访问速度,对网页进行压缩是非常不错的一条方法。尽管说压缩wordpress页面后对查看源代码来说不太友好,更可以说是惨目忍睹。但是压缩页面的好处就是减少了页面的体积,从访问速度上来说,更快些,尽管这些是肉眼看不到的,但是这样做确实很好,另一方面就是给扒皮者制造麻烦,他们不得不重新整理页面代码的整洁性!

插件版

如果你正在找一款只可以压缩wordpress代码,优化wordpress的工具,不需要其他多余的功能,那么这个插件你应该会喜欢:WP-HTML-Compression。与同类wordpress优化插件Autoptimize有相似的功能,它的主要作用是——删除前端页面所有空行和制表符等不必要的内容、简化代码,从而实现加速 WordPress 的效果。你甚至不需要做任何设置,下载,安装,启用。不要小看页面中的空行,删去后可以节省大量载入时间,这也就是为什么 jQuery、Bootstrap 等文件要提供“Uncompressed”和“Compressed”版的原因。

当然,如果你有些代码不想被压缩,那么此插件也提供了非常人性化的注释方法:

<!–wp-html-compression no compression–>
此标签里的代码将受到保护,不会被插件压缩
<!–wp-html-compression no compression–>

代码版

当然,如果不想安装插件的同学也可以试试下面代码!压缩效果可见本站。

直接在 functions.php 中加入下面的代码即可,来自@张戈!

/** WordPress前端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高亮插件,为了防止“代码切换到纯文本模式时,代码全挤在一团”,可在function.php中加入以下代码:

/* Crayon Syntax Highlighter高亮插件不启用压缩 */
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”);

©龙笑天下

文章字数统计:2205 | 百度已收录

  |  pc蛋蛋幸运28群/WordPress  


微部落博客编辑整理发布,如有侵犯您的版权,请提供相关版权证明,博主将立即删除。
·博客大全  博客网址之家  博客导航  来路IP首页展示!   ·免费收录  ·免费推广你的博客   114.vprol.com
如果本文对您有用就 打个赏吧微信 OR 支付宝 扫描二维码
pay_weixin     pay_weixin
金额随意,您的支持是我的动力~

草根站长,博客导航,博客大全,博客网站,增加网站流量
回复 取消

欢迎评论发言,灌水及广告评论将被定期删除!