Si por página de inicio te refieres a la página principal, puedes implementarla hook_preprocess_page()
en un 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();
}
}
El mismo código funciona en Drupal 7, como $variables['is_front']
se establece en _template_preprocess_default_variables () (llamado desde template_preprocess () ), usando el siguiente código.
// 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;
}
La razón de llamar drupal_add_js()
primero, y luego drupal_get_js()
es que, en el caso de que otro módulo que se ejecute después ejecute el siguiente código, el archivo JavaScript aún se agregará.
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()
, el archivo se agregará a la salida devuelta por drupal_get_js () .