尽管说压缩wordpress页面后对查看源代码来说不太友好,更可以说是惨目忍睹。但是压缩页面的好处就是减少了页面的体积,从访问速度上来说,更快些,尽管这些是肉眼看不到的,但是至少模板下载吧喜欢这样,另一方面就是给扒皮者制造麻烦,他们不得不重新整理页面代码的整洁性!
给wordpress页面进行压缩不是压缩自己的实际代码,而是前台预览的压缩!相关插件是“WP-HTML-Compression” 但是大叔今天不是说用插件来完成,再说,就目前,貌似WP-HTML-Compression和七牛有冲突,启动WP-HTML-Compression后,会导致文件不被七牛所镜像!模板下载吧也没找出是什么原因。。也许这也是个例吧!
下面直接说今天的教程吧,打开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;
- }
- ob_start("wp_compress_html_main");
- }
- add_action('get_header', 'wp_compress_html');
将代码贴入后,在刷新下前台页面,查看源代码,是否压缩过了?
压缩页面会衍生出一些问题,比如说,某些位置的某些特效失效了,那么我们还需要对某些位置进行禁止压缩操作,方法是:
- <!--wp-compress-html--><!--wp-compress-html no compression-->
- 不被压缩的部分
- <!--wp-compress-html no compression--><!--wp-compress-html-->
意思就是说将不想被压缩的部分前后加入这个屏蔽码,即可将这段代码不被压缩到!大叔特殊提醒,个别对wordpress页面进行压缩后会检测不到友情链接,通过各种工具都检测不到友情链接的存在,这时候也是需要这个屏蔽码来将友情链接的部分进行禁止压缩操作!