drupal_add_js куда добавить?

Главные вкладки

Комментарии

Аватар пользователя AndreyL AndreyL 5 апреля 2011 в 12:55

я хотел, используя drupal_add_js добавить еще один скрипт.
я так понимаю (прочитал где-то тут на форуме), что в page.tpl drupal_add_js прописывать бессмысленно. Поэтому в page.tpl.php использую вставку через теги "script": <script type="text/javascript" src="/misc/collapse.js.gz"></script>
Надо вставить collapse.js
попытался прямо через common.inc ))) - наверное, зря; но там же добавляются 2 файла; просто не знаю где это точно делать.
          'misc/collspse.js' => array('cache' => TRUE, 'defer' => FALSE, 'preprocess' => TRUE),

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 5 апреля 2011 в 12:56

"AndreyL" wrote:

я так понимаю, что в page.tpl drupal_add_js прописывать бессмысленно

Скорее моветон. Шаблон должен быть максимально отделён от кода

"AndreyL" wrote:
попытался прямо через common.inc

Хак ядра = плохо

Аватар пользователя AndreyL AndreyL 6 апреля 2011 в 14:04

И все-таки поступил так: вписал скрипт collapse.js в drupal.js - все работает как надо. И обновлять просто:), если новая версия будет;
кроме того, исчезла "некореектность" кода, которая была при использовании <link...> </link> (при проверке на w3.org. хотя <script...></script> использовать ничто не мешало. но хотелось сжатия, агрегации и пр. "примочек".

Аватар пользователя natbampo natbampo 6 апреля 2011 в 16:43

Что то странное ты делаешь.
Скрипт можно добавить:
1) в теме(для всех страниц)
2) в своем модуле hook_init, для разных условий
3) во всех шаблонах кроме шаблона страницы
4) в функции препроцесса страницы, с небольшой магией (penexe выше намекнул как)