Вариант 1 С помощью кастомного модуля
Для таких изяществ есть спец функция drupal_add_js(). Она, как несложно догадаться, добавлят JS файл на сайт. Все просто и банально, вот вам парочка примеров:// Добавляет JS
drupal_add_js('js/script.js');
// Добавляет JS по урл
drupal_add_js('https://www.google.com/jsapi');
// Добавляет конкретный JS скрипт.
drupal_add_js('jQuery(document).ready(function () { alert("Hello!"); });');
// И даже! Можно передать в JS нужные данные.
// Этот код добавит значение в DOM drupal.settings.wtf текст tratata. Разумеется он будет доступен из Javascript.
drupal_add_js(array('wtf' => 'tratata'), 'setting');
Также полезной окажется следующая функция:
drupal_get_path('module', 'wtf');
Данная функция вернет путь до места нахождения модуля. Например, если вы храните свой скрипт в модуле wtf, а там в папке js, то добавить скрипт можно двумя способами:
// Самый первый что придет в голову
// Но если переместить модуль, все слетит.
drupal_add_js('sites/all/modules/wtf/js/script.js');
//А вот более «железное» решение
drupal_add_js(drupal_get_path('module', 'wtf') . '/js/script.js');
Вариант 2 Через тему сайта
Также можно подключать JS при помощи своей темы оформления. Напишу на примере zen-subtheme.Создаем в папке темы новую папку и назовем js, а в неё кладем наш script.js. Затем нам достаточно открыть .info файл темы и добавить в соответствующий раздел, если нету то добавьте где сами считаете нужным, следующий код:
scripts[] = js/script.js
Вариант 3: В файле темизации
Чтобы файл подключился на определенной ноде и вы создали для неё шаблон node-NID.tpl.php. В этом случае проще всего подцепить JS непосредственно в этом файле, просто вверху напишите то что мы рассмотрели в варианте 1.Тут будет полезна еще одна функция для опредления путей: path_to_theme() - она возвращает путь до текущей темы, как в случае с модулем.
Допустим хотим добавить файл из варианта 2 но через php:
drupal_add_js(path_to_theme().'js/script.js');
Просто, не так ли?
А главное правильно и надежно.
При этом можно просто передавать параметры в из PHP в JS, что увеличивает гибкость.