Добавление скрипта в определенные узлы и страницы на drupal 7 - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь добавить код скрипта на все страницы моего друпала, кроме нескольких.Есть ли какие-либо условия, которые я могу использовать в html.tpl.php?или какие-либо функции в template.php для достижения этой цели?

Я попробовал приведенный ниже код на template.php, но не повезло: (

Заранее спасибо!

 function THEME_preprocess_page(&$variables) {

  if (isset($variables['node']->type)) {
   $variables['theme_hook_suggestions'][] = 'page__' . 
   $variables['node']->type;
  }

  //this is what I am trying
  if ($variables['nid'] == '77') {
   drupal_add_js(drupal_get_path('theme', 'THEME') .'/scripts/path.js');
  }
} 

1 Ответ

4 голосов
/ 22 мая 2019

Вы можете использовать hook_page_build (& $ page)

function MYMODULE_page_build(&$page){

  $nids = array(123, 1234); // your nids 

  if(($node = menu_get_object('node', 1)) && in_array($node->nid ,$nids) ){
      drupal_add_js(drupal_get_path('theme', 'mythemename') .'/scripts/path.js');
  }
}

Очистить весь кеш после создания этой функции, чтобы увидеть результат, а также убедиться в правильности пути сценария;)

...