WordPress页面html源代码压缩优化,可以加快WordPress的打开速度,不过压缩后使得某些效果无法正常显示,某些插件也可以实现如“WP-HTML-Compression”,本着能不用插件就尽量不用插件,我们还是推挤代码方式,这里我们也写出了解决这某些效果失效的解决方法,下面看代码版的实现方法。
1.将以下代码粘贴到 WordPress 主题目录下的 functions.php 文件的最后一个 ?> 之前即可:
//压缩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;
}
if ( !is_admin() ) {
ob_start("wp_compress_html_main");
}
}
add_action('init', 'wp_compress_html');
2.修改保存后去前台刷新下页面是否正常、是否压缩过了?如某些效果无法正常显示,查看源代码,那么我们还需要对这些位置进行禁止压缩操作,方法是:
<!--wp-compress-html--><!--wp-compress-html no compression-->
不被压缩的部分
<!--wp-compress-html no compression--><!--wp-compress-html-->
注意:将不想被压缩的部分前后加入这个白名单代码之内,那么这段代码就不会被压缩到,这样我们的WordPress就开启了压缩,加载速度就会更快更流畅!!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END