質問
見つからないに関する情報YiiのAssetManager管理のためのJSやCSSファイルです。私の質問はこちらかのポイントを使用AssetManager?お使いいただくことによって価値が加わっ開発プロセス、そのような複雑なものに私のコー---毎時間を変更したい私のスクリプト、cssコードしなくてはならなくなり、削除財産フォルダを確認している情報をもとに、最新版のソー.
そうは簡単になるだけですべてのJavascriptファイル/webrootウェブルート/js/か軒のタグのファイルを通じてではなく、トラブルのAssetManager.プラスYiiのregisterCoreScript常に機能箇所のスクリプトタグの内部ヘッダータグの代わりにしばらく置いて、下のコードの開閉は、が推奨するYSlow.
と思いきなギャップは私の理解YiiのAssetManager.もってそのアイデアかのAssetManagerよく符号化のスクリプトタグ内のPHPコードについて教えてください。私は少し戸惑...
よろしく!
解決
私は誰かが自分よりも優れ、これを答えることができると確信していますが、基本的にそれはあなたのソースはのJSとCSSファイルが保護されたフォルダに残ることができるようです。
これは少しより多くの一つには安全ですが、私の主な利点は、それが資産公開システムとのあなたはを圧縮し、縮小化し、そうでない場合は、あなたの資産を処理することができますし、それはにそれが容易になりますのCDN上のホストあなたのJSとCSS のそれはあなたのコードベースから別のだから。
また、ここでは強のから公式反応ですこれについて(Yiiのを書いたやつ)。
他のヒント
るYiiの資産運用会社である ることができるためお客様のコンポーネントを含み方法.
物語のウィジェット
考えるコンポーネントのUIウィジェット.このような分布を含むカップルの資産の部の実装では、例えば、これらのファイル:
SuperWidget.php
superwidget.css
superwidget.js
image_for_css.png
どのようにお取り込むこのウィジェットには、アプリケーションから利用の場合は資産運用会社が存在しませんでした。代表的な手順も含む
- コピー
SuperWidget.php
どこかのprotected/
ディレクトリ - コピー
superwidget.js
ごjs/
ディレクトリ - コピー
superwidget.css
ごcss/
ディレクトリ - コピー
image_for_css.png
ごimages/
ディレクトリからファイルをタップするcss/
を低減するための相対パスに依存関係
そして実行時にSuperWidgetい出の適切なタグの設定でCSSとJavaScript; このためには、知る必要があるがそうさせていただきこれらの資産.言い換えれば 一部の選択に関しての設置できる任意ですが、その後は定石でない限り、行編集のソース.
はウィジェットの再利用出来ますか?
このウィジェットした高度にカスタマイズやって不可分の一部に申請してこのアプローチが細くはないと思いますか必要資産です。その場で広く有用なコンポーネントまたは配布?
問題の開始による。
最初の導入スキームを検討が必要でユーザのウィジェットコピーの異なるファイルを別のディレクトリを複雑にインストール方法などが開催されるチャンスを増やしのエラーになります。
がどの問題は、その導入スキームが紛争とその他のコンポーネントで独自に開発したものです。だんすることを決定しました superwidget.js
ファイルもあるのですか?
の場合はインストール手順はこれら二つの成分が紛争を明らかにしないとしてインストールすること、およびそのリゾートの変化詳細およびハッキングのソースコードのコンポーネントのこれらの変わります。ば以降にアップグレード新しいバージョンのこのコンポーネントごとを余儀なくされくを占めのカスタマイズ環境で、"コピー/上書きアップグレード可能ですか。
すべてのことは本当になかがいきが起こるので、練習でもない感じですね。
資産の部のようになって
こちらの資産運用会社です。そのとする構造スポートのようになります:
superwidget/
SuperWidget.php
assets/
css/
superwidget.css
js/
superwidget.js
images/
image_for_css.png
きを直接コピーこどこかおか protected/
ディレクトリなどの部品を設置している;最悪のことで起こりうることはい名前の変更 superwidget/
になる場合がある。
の資産管理者、 SuperWidget.php
を公開 全体の superwidget/assets/
ディレクトリにコピー終了時などの assets/1337c0de/
場所 assets/
はアプリケーションのベース資産のパス 1337c0de/
でも改行ができることを最近知りハッシュ作成したYiiと保証されない紛争とその他の刊行資産となります。
そのための資産SuperWidget できるものではありません紛争とその他のコンポーネント, 決SuperWidget真の再利用が可能です。そのディレクトリ構造内 1337c0de/
問と新しいパスワードを入力して自分布、CSSを参照することができ画像を用の相対パス ../images/
なくご参照の値にランダムハッシュ(み後にお知ら出版)などがある。
の資産運用会社ではない
- なに増やせる。ポートソースがどこか内
protected/
とにかく(そうな改善があり、資産が必要なウェブアクセス可能なものとなっているコピー(セキュリティとして認識はしているものの、ど). - なキャッチオシ加工お客様の資産(例えばminifying CSS).なっていますが、あくまでカスタム資産運用会社とすることを忘れないでください資産に含まれ再利用可能なコンポーネントの少数の中の"ベースアプリ"資産したい場合はminificationは、'llても過程にも、本資産運用はできます。
TL;DR
本資産運用を可能にする成分は容易に分配可能額及び含めることができ用途を恐れず創造的、その他。
もう一つの特典
のhttp:// WWW .yiiframework.com /ウィキ/ 311 / assetmanagerクリアブラウザ-S-キャッシュオンサイト更新/ の