jQuery等のライブラリをレイアウトファイルで読み込ませ、その他のJavaScriptファイルはテンプレート側で必要に応じて読み込む方法をどうやったらよいか、 前から悩んでいたのですが、以下、動く方法が1つ見つかりました。
レイアウトファイルの一部
<?php // 一番最初に読み込みたいjsファイル $globalJsFiles = [ 'URI/URI.min', 'js-cookie/js.cookie', 'jquery/jquery-3.2.0.min' ]; echo $this->append('globalScripts', $this->Html->($globalJsFiles)); echo $this->fetch('globalScripts'); echo $this->fetch('nonGlobalScripts'); ?> </body> </html>
テンプレートファイル
<?php echo $this->append('nonGlobalScripts', $this->Html->script('helloworld')); ?>