IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    写了一个适用于Typecho的HTML压缩插件:简单压缩模式和完全压缩模式

    52txr发表于 2024-12-29 16:41:00
    love 0

    在网站建设中,页面加载速度是一个至关重要的因素,它直接影响着用户体验和搜索引擎排名。为了帮助Typecho博客用户优化网站性能,小陶推出了LightHTML插件,该插件能够有效压缩HTML内容,减少页面加载时间,提升网站性能。

    为什么要开发LightHTML插件?

    前面写到《你们会考虑压缩HTML网页(去除注释、空行、缩短成一行等)再渲染吗?》其实我就在一直捣鼓这么个事。一开始是看到了《CompressHTML 代码压缩 CompressHTML-For-Typecho - - Github》,插件也就是下面这个样子。除了感觉年代久远(已经很过时了,开发时间是2016-12-23),也感觉不是专门为了压缩html而开发的,毕竟GZip和关键词替换还是让我觉得有些突兀的。所以有必要开发一个新的插件来满足自己的需求。

    CompressHTML插件页面

    插件简介

    LightHTML插件是一款专为Typecho博客设计的HTML压缩插件。它能够自动压缩博客页面的HTML代码,去除不必要的空格、换行和注释,从而减少页面体积,提高加载速度。插件提供两种压缩模式,满足不同用户的需求。

    • 简单压缩模式:去除HTML中的空白行和注释,保留代码结构的可读性。
    • 完全压缩模式:在简单压缩的基础上,进一步压缩HTML标签之间的空格,将HTML代码压缩为一行,达到更极致的压缩效果。
    • 跳过标记内容:对于不想被压缩的地方可以选择跳过,使用<!-- NO_COMPRESS_START -->和<!-- NO_COMPRESS_END -->包裹起来不想被压缩的内容即可。
    • 灵活配置:用户可以根据自身需求,在插件设置中选择不同的压缩模式。
    • 安全可靠:插件设计精巧,不会对页面内容和结构产生影响,确保网站正常运行。

    更新日志

    LightHTML插件 1.0.2
    • 修复的问题:代码块里的换行都被删除了,导致了所有的代码都变成了一行。现在支持手动输入跳过的标签。handsome的代码块是用<pre></pre>包裹起来的
    • 删除了网页大小的计算,完全没必要。
    • 简单压缩模式默认就是简单压缩模式增强版。
    • 依然支持<!-- NO_COMPRESS_START -->来包裹不压缩的部分

      设置跳过压缩的标签

    下载地址

    LightHTML插件 v1.0.2

    下载地址1:LightHTML插件 v1.0.0 - 蓝奏云下载 密码:bne3

    下载地址2:LightHTML插件 v1.0.2 - 123盘下载(主)

    下载地址3:LightHTML插件 v1.0.2 - 123盘下载(主)

    LightHTML插件 v1.0.0

    下载地址1:LightHTML插件 v1.0.0 - 蓝奏云下载 密码:f685

    下载地址2:LightHTML插件 v1.0.0 - 123盘下载(主)

    下载地址3:LightHTML插件 v1.0.0 - 123盘下载(备)

    安装及使用

    1、下载之后,上传到typecho插件目录/usr/plugins下,并且确保文件夹名为LightHTML

    2、进入Typecho后台,导航至“插件”菜单,找到LightHTML插件并激活。

    默认是使用简单压缩模式,可以手动设置为完全压缩模式。

    压缩模式

    可选项

    (1)如果不想显示页面计算的大小以及小陶的插件信息,可以把93、94行删掉。虽然理论上造成的影响可以忽略不计,但是介意的话可以去除。

    删除页面大小计算

    (2)更强效果的“简单压缩模式”:可以启动109行(看主题的兼容情况,默认是比较保守的简单压缩)

    删除注释

    压缩效果

    (1)简单压缩模式:

    简单压缩效果

    <!-- 压缩前:84.04 KB,压缩后:79.38 KB -->

    (2)简单压缩模式增强版:

    简单压缩模式增强版

    <!--压缩前:84.1 KB,压缩后:70.38 KB-->

    (3)完全压缩模式:

    完全压缩模式

    <!-- 压缩前:84.01 KB,压缩后:68.62 KB -->

    注意事项

    • 兼容性:插件经过严格测试,兼容Typecho最新版本,但在某些特殊情况下可能影响页面布局,请在使用前备份网站。
    • 测试建议:建议在本地测试环境或博客的非主站环境中测试插件效果,确保无误后再应用于生产环境。

    handsome主题的一些适配

    根据各个主题代码风格的差异,不一定完全适合使用这个HTML压缩插件。一些可能不兼容的地方需要进行跳过压缩。

    插件支持通过标记来跳过一些不需要压缩的代码。示例:

    <!-- NO_COMPRESS_START -->
    
    不压缩的代码,用标签包裹即可。
    
    <!-- NO_COMPRESS_END -->

    对于博主目前使用的handsome主题来说,需要进行如下适配。根本原因是handsome作者使用了一些不太好弄的js代码。

    省流版就是搜索LocalConst,凡事带有这个变量的js代码都不要进行压缩。



沪ICP备19023445号-2号
友情链接