Skip to content

voku/html-compress-twig

 
 

Repository files navigation

Build Status Coverage Status Scrutinizer Code Quality Codacy Badge SensioLabsInsight Latest Stable Version Total Downloads Latest Unstable Version License

🗜️ HtmlMin for Twig: HTML Compressor and Minifier

Description

A Twig extension for voku/HtmlMin.

Currently supported Twig features are:

  • Tag

    • {% htmlcompress %} <foo>bar</foo> {% endhtmlcompress %}
  • Function

    • {{ htmlcompress(' <foo>bar</foo>') }}
  • Filter

    • {{ ' <foo>bar</foo>' | htmlcompress }}
  • Installation

  • Usage

  • History

  • License

Installation

  1. Install and use composer in your project.
  2. Require this package via composer:
composer require voku/html-compress-twig

Usage

First register the extension with Twig:

use voku\helper\HtmlMin; use voku\twig\MinifyHtmlExtension; $twig = new \Twig\Environment($loader); $minifier = new HtmlMin(); $twig->addExtension(new MinifyHtmlExtension($minifier));

Register extension in symfony 4

Specifying HtmlMin is needed for the autowiring.

 voku\helper\HtmlMin: tags: - { name: HtmlMin } voku\twig\MinifyHtmlExtension: arguments: $forceCompression: false tags: - { name: twig.extension }

Then use it in your templates:

{% htmlcompress %} <foo>bar</foo> {% endhtmlcompress %} {{ htmlcompress(' <foo>bar</foo>') }} {{ ' <foo>bar</foo>' | htmlcompress }} 

Compression is disabled by Twig's debug setting. This is to make development easier, however you can always override it.

The constructor of this extension takes a boolean as second parameter $forceCompression. When true, this will force compression regardless of Twig's debug setting. It defaults to false when omitted.

$twig->addExtension(new MinifyHtmlExtension($minifier, true));

History

See CHANGELOG for the full history of changes.

License

This project is licensed under the ISC license which is MIT/GPL compatible and FSF/OSI approved. See the LICENSE file for the full license text.

About

🗜️ HtmlMin for Twig: HTML Compressor and Minifier

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%