CakePHP 3.8 に CakePHP Minify HTML Plugin を導入
はじめに
今日はCakePHP3で、HTMLのソースコードをミニファイ(圧縮)してくれるCakePHP3用プラグイン「CakePHP Minify HTML Plugin」の導入方法をご紹介します。
- GitHub - WyriHaximus/MinifyHtml: CakePHP Minify HTML Plugin
- https://github.com/WyriHaximus/MinifyHtml
今回使用したCakePHPのバージョンは3.8ですが、3.6以降は上記GitHubで表示される README.md の方法とは異なるので注意が必要です。
1. Composer で CakePHP Minify HTML Plugin をインストール
$ cd /path/to/cakephp3
$ composer require wyrihaximus/minify-html:1.*
2020.04.11 追記
上記コマンドに minify-html のバージョン指定「:1.*」を追加しました。現在の最新版だと CakePHP 3 には対応していないためです。
2. Application.php でプラグイン読込
/src/Application.php の function bootstrap() { ~ } の中に(おそらく最下部)、
「Load more plugins here」というコメントがあるので、その下に下記1行を追記。
/src/Application.php
public function bootstrap()
{
~~~(省略)~~~
// Load more plugins here
$this->addPlugin('WyriHaximus/MinifyHtml', ['bootstrap' => true]); // ← これを追加
}
3. AppView.php でプラグイン読込
/src/View/AppView.php の function initialize() { ~ } の中に、下記1行を追記。
/src/View/AppView.php
public function initialize()
{
$this->loadHelper('WyriHaximus/MinifyHtml.MinifyHtml'); // ← これを追加
}
4. 動作確認
/config/app.php の "debug" を false にして閲覧し、ソースコードから改行やインデントが削除されていれば完了です。
"debug" が true の場合はミニファイされませんのでご注意ください。