Skip navigation
Help

hook_language_init

7 locale.api.php hook_language_init()

Allows modules to act after language initialization has been performed.

This is primarily needed to provide translation for configuration variables in the proper bootstrap phase. Variables are user-defined strings and therefore should not be translated via t(), since the source string can change without notice and any previous translation would be lost. Moreover, since variables can be used in the bootstrap phase, we need a bootstrap hook to provide a translation early enough to avoid misalignments between code using the original values and code using the translated values. However modules implementing hook_boot() should be aware that language initialization did not happen yet and thus they cannot rely on translated variables.

Related topics

File

drupal/modules/locale/locale.api.php, line 39
Hooks provided by the Locale module.

Code

function hook_language_init() {
  global $language, $conf;

  switch ($language->language) {
    case 'it':
      $conf['site_name'] = 'Il mio sito Drupal';
      break;

    case 'fr':
      $conf['site_name'] = 'Mon site Drupal';
      break;
  }
}