MagentoでGoogle CDNのjQueryを含めるために以下を実行しました。
<default>
<reference name="head">
<block type="core/text" name="google.cdn.jquery">
<action method="setText">
<text><![CDATA[<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script><script type="text/javascript">jQuery.noConflict();</script>]]>
</text>
</action>
</block>
</reference>
</default>
ただし、ローカルフォールバックを使用して実装したい場合(非常にうまく機能します)、次のように.phtmlに追加します。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
if (!window.jQuery) {
document.write('<script src="/path/to/your/jquery"><\/script>');
}
</script>
- 私がやっているようにフォールバックをノードに押し込むよりも、local.xmlでこれを行うエレガントな方法はありますか?
<text>
jQuery.noConflict
編集:
質問の他の部分に注意を引くために-jQueryを含むコミュニティモジュールはありますか?ローカルのjQueryを使用している場合、Google CDNを使用している場合はそれで問題ありません。これがない場合は、作成したいと思います。
- 自分でブートストラップせずにこれを処理する拡張機能はありますか?
1
JQuery(セミセルフリンク)を含む非常にシンプルなコミュニティモジュール:github.com/netz98/N98_BaseJQuery-ローカルJQueryのみが含まれます。CDNを介したアイデアは素晴らしく、プルリクエストを介して自由に改善してください:
—
アレックス
好奇心から:CDNは信頼できないか、またはフォールバックが必要な理由は何ですか?どんな実務経験がありますか?
—
アレックス
一部の国(イラン、シリアなど)は、GoogleおよびGoogle CDNをブロックすることがあります。これは私の個人的な経験です。また、これにより軽減される応答タイムアウトのようなものを見てきました。
—
philwinkle
理解する。そのため、モジュールにソリューションを提供できるといいですね。
—
アレックス
素晴らしい発見-適切なものを探しているときにN98モジュールが見つかりませんでした。私はそこに貢献すると思います。ありがとう!ただし、
—
...-philwinkle
<text>
上記の方法を使用する必要がある場合があります...それが許容できる解決策かどうかはわかりません。n98モジュールは、noConflictを呼び出すために個別のjsインクルードファイルを使用しますが、私は