web-dev-qa-db-ja.com

Drupal 6でjavascriptファイルの順序を変更する方法は?

JavaScriptファイルの順序を変更し、具体的にはjwplayer.jsファイルを移動して、jquery_ui * .jsファイルの後に含まれるようにします。誰でもこれを行う方法を知っていますか? Drupal 7、using hook_js_alter() でこれを行う方法を確認します。しかし、Drupal 6。

更新:これは私のセットアップに関するいくつかの詳細情報で、関連する可能性があります:-カスタムビューテンプレート内からdrupal_add_js( 'jwplayer.js')を呼び出します。テンプレートは、ビューデータに動画が含まれているかどうかに応じて、条件付きでjwplayer.jsを追加します。

2
user606696

drupal_add_js() および drupal_get_js() を見ると、詳細が表示されます。残念ながら、 module_invoke_all() またはいとこです。呼び出されないので、フックはありません。ブー。関連する問題は、集約すると、文字列操作(たとえば、分解、並べ替え、分解)を実行できなくなることです。

これを処理する最良の方法は、 JWプレーヤーモジュール の重みを変更することです。これを行う1つの方法は、{system}テーブルを作成し、weight列の値を編集します。重み付けを使用すると、低い数値が先に実行され、高い数値が後で実行されます。同点がある場合、アルファベット順に実行されます。これを行うときは、必ずキャッシュをクリアしてください。詳細については モジュールの重みを変更する-モジュールまたは手動で を参照してください。

これで問題が解決しない場合は、JSファイルが同じフックで追加されていません。この場合、モジュールをハッキングせずに何ができるかわかりません。

完全なハンマーアプローチは、コードを含めず、テーマの.infoファイルに追加することです。これにより、すべてのモジュールの後に追加されます。

5
mpdonadio

準備した順番でセットを外し、再度取り付ける必要があると思います。少し似ているここの私の投稿を参照してください- Javascriptファイルを削除するにはどうすればよいですか?

1
ninjascorner

D6のJS Alterモジュール: http://drupal.org/project/jsalter

このモジュールは、他のモジュールがページへの出力を取得するJavaScriptを変更するために使用できるhook_js_alter()フックを追加します。

1
Bálint Deáki