web-dev-qa-db-ja.com

drupalの集約されたJavaScriptを(自動的に)縮小する最良の方法は何ですか?

新しく作成したdrupal 6サイト上で Google pagespeed を実行すると、次のように報告されます。

Minifying the following JavaScript resources could reduce their size by 15.6KiB (12% reduction).

    Minifying http://[sites]/sites/default/files/js/js_9f19b87ffb72ca233ea7e45dda2f20f9.js could save 15.3KiB (18% reduction). See optimized version or Save as.

上記のファイルはdrupalのデフォルトのJavaScript集約メソッドによって生成されたものですが、明らかに18%小さい可能性があります(これはこのサイトにとって大きな問題です)。 drupalサイトのJavaScriptを既存のコードを壊すことなく縮小することに関しては、どのアプローチが最良と考えられますか?

10
wiifm

Apacheを使用して拡張機能をインストールできる場合(例:共有ウェブホストではない場合)、そのために Javascript Aggregatorモジュール を使用するか、インストール PageSpeed (Firebug拡張ではなくApacheモジュール)を使用できます。 )とDrupal独自の集約を組み合わせることで、PageSpeedがCSSを最小化できるという追加の利点があります。

4
wildpeaks

集約の問題の多くに取り組むために新しいモジュールを作成しました。それをD8に大量に入れたいと思います。はい、D6モジュールです http://drupal.org/project/advagg 。 JSの圧縮にはjsmin + libを使用し、CSS圧縮にはCSSTidy libを使用します。これの主な利点は、css/js集約ファイルが必要でない限り名前を変更しないことです。これらのファイルはまた、1年のキャッシュ有効期間を持ち、画像キャッシュが生成されるため、CSSファイルへの404は過去のものになります。

更新:AdvAgg 7.xは開発中で、オプションのサブモジュールとしてJSの縮小版が付属しています。その他のD7オプション:
http://drupal.org/project/speedy
http://drupal.org/project/uglifyjs

6
mikeytown2

Minify モジュールを使用して同じことを行うことができます。 Minifyモジュールは、Googleコンパイラを使用してJavaScriptを縮小します。また、「集約JavaScriptファイル」でも機能するので、Drupal 7.のデフォルトオプションである複数のJavaScriptファイルを結合することもできます。

MinifyモジュールはHTMLも縮小します。

2
Atul Bhosale