杨小杰博客提供免费教程下载和网站搭建技术教程,主要分享和发布网站源码,致力创造一个高质量网络资源教程的分享平台

Emlog无插件实现网站源代码压缩

Young小杰2018-6-26 11:03网站搭建(0)283查询中……小标签: 网站优化 emlog 舍力博客

小杰最近发现网站源代码十分的凌乱,各种插件都往外丢css,js代码,搞的源代码十分的长,所以今天特地删减优化整理了一下源代码,之后又学习了这篇《Emlog无插件实现网站源码压缩》进行源代码压缩

先把下面的代码放到module.php

<?php 
//全站代码压缩
function slys($sheli){$initial=strlen($sheli);$sheli=explode("<!--slys-->",$sheli);$count=count($sheli); for($i=0;$i<=$count;$i++){if(stristr($sheli[$i], '<!--slys end-->')){$sheli[$i]=(str_replace("<!--slys end-->", " ", $sheli[$i]));}else{$sheli[$i]=(str_replace("\t", " ", $sheli[$i]));$sheli[$i]=(str_replace("\n\n", "\n", $sheli[$i]));$sheli[$i]=(str_replace("\n", "", $sheli[$i]));$sheli[$i]=(str_replace("\r", "", $sheli[$i]));while (stristr($sheli[$i], '  ')){$sheli[$i]=(str_replace("  ", " ", $sheli[$i]));}}$sheli_out.=$sheli[$i];}$final=strlen($sheli_out);$savings=($initial-$final)/$initial*100;$savings=round($savings,2);$sheli_out.="\n<!--压缩前的大小: $initial bytes; 压缩后的大小: $final bytes; 节约:$savings% -->";return $sheli_out;}
?>
然后给footer.php最最最后面一行加上
<?php $html=ob_get_contents();ob_get_clean();echo slys($html);?>
如果要实现不压缩pre中的代码,要在module.php里面的加入下面代码
<?php 
//不压缩pre
function slbys($content){if(preg_match_all('/(crayon-|<\/pre>)/i',$content,$matches)){$content = '<!--slys--><!--slys end-->'.$content;$content.= '<!--slys end--><!--slys-->';}return $content;}slbys($log_content);
?>
然后在echo_log.php、page.php文件中的$log_content用下面代码替换
slbys($log_content)
然后大功告成,访问view-source:https://www.youngxj.cn/就能看到源码压缩后的代码了


温馨提示:压缩源码意味着删除换行,空格等无效字符,所以这个时候就会出现一些问题,比如js的//注释把所有js代码都注释掉了,还有js设置变量,函数没有加分号等不正规的编写都会导致js无法正常运行,所以把//注释换成/**/,把该加的;分号毫不吝啬的加上。再去看控制台是否报错。


发表评论: