カスタム ノード タイプのモジュールをセットアップしました (私が本当に気に入っている javascript jQuizMe の後に jquizme を呼び出しました)。動作させるために提供する必要がある JavaScript ファイル用に 2 つのフィールドを設定します (一般的な jQuizMe-2.2.js ファイルの後に、別の 2 つの JavaScript ファイル (設定用とクイズ コンテンツ用) を追加する必要があります)。
Drupal はファイルを myjavascriptfile.js.txt として保存します - 私はそれらをテストしましたが、それでも jQuizMe インターフェイスを作成するために動作します - OK. 問題は、ノードページにこれらのファイルを追加したいということです...ファイルはノードごとに異なります。drupal_add_js() 関数のファイルにアクセスして、問題のノードのファイルをロードするにはどうすればよいですか?
カスタム フィールド フォーマッタを設定しようとしましたが、特定のノードのファイルの uri に自動的にアクセスして drupal_add_js() 関数に入れる方法がわかりません (静的ファイルを追加でき、正常に読み込まれます...これは hook_node_view ( jquizme_node_view ) で行いました。
ファイルの情報にアクセスする方法が必要なだけです...ファイルは各ノードにどのようにリンクされていますか? 接続が見つかりません。お気づきかもしれませんが、私はモジュールを書いている初心者であり、オブジェクト指向プログラミングに関連することはおそらくあまり理解できません。申し訳ありませんが、まだそのレベルには進んでいません)。重要な情報を忘れていたと思いますが、これはすでに長くなりすぎています。
また、jQuizMe を Drupal で動作させることができるかどうかを確認するために、特別なページを以前にセットアップしました。これはまだコード内にあります。
私は多くの答えを試しました (過去 6 時間かそこら... ここで言うには多すぎます)。最新のものはトークンを使用していますが、うまくいきません。これが私がこれまでに持っているものです:
function jquizme_node_view($node, $view_mode, $langcode) { switch ($node->type) { case 'jquizme': $items = field_get_items('node', $node, 'field_myfield', $node->language); drupal_add_css(drupal_get_path('module', 'jquizme') . '/jQuizMe.css', >array('scope' => 'header')); drupal_add_js(drupal_get_path('module', 'jquizme') . '/alert.js'); drupal_add_js(drupal_get_path('module', 'jquizme') . '/jQuizMe-2.2.js', >array('scope' => 'header')); //drupal_add_js($tokens['node']['jquizme_js1_field'], array('scope' => >'header')); //drupal_add_js($tokens['node']['jquizme_js2'], array(' スコープ' => 'ヘッダー')); 壊す; } }
前もって感謝します!