Se por home page você se refere à primeira página, é possível implementar hook_preprocess_page()
em um módulo personalizado.
function mymodule_preprocess_page(&$variables) {
if ($variables['is_front']) {
drupal_add_js(drupal_get_path('module', 'mymodule') . '/mymodule.js');
$variables['scripts'] = drupal_get_js();
}
}
O mesmo código funciona no Drupal 7, conforme $variables['is_front']
definido em _template_preprocess_default_variables () (chamado de template_preprocess () ), usando o código a seguir.
// drupal_is_front_page() might throw an exception.
try {
$variables['is_front'] = drupal_is_front_page();
}
catch (Exception $e) {
// If the database is not yet available, set default values for these
// variables.
$variables['is_front'] = FALSE;
$variables['db_is_active'] = FALSE;
}
O motivo da chamada drupal_add_js()
primeiro e, em seguida, drupal_get_js()
é que, no caso de outro módulo executado após executar o código a seguir, o arquivo JavaScript ainda será adicionado.
function quite_a_different_module_preprocess_page(&$vars) {
drupal_add_js(drupal_get_path('module', 'quite_a_different_mymodule') . '/quite_a_different_module.js');
$vars['scripts'] = drupal_get_js();
}
Usando drupal_add_js()
, o arquivo será adicionado à saída retornada por drupal_get_js () .