function content_translation_install in Drupal 9
Same name and namespace in other branches
- 8 core/modules/content_translation/content_translation.install \content_translation_install()
- 10 core/modules/content_translation/content_translation.install \content_translation_install()
Implements hook_install().
File
- core/
modules/ content_translation/ content_translation.install, line 14 - Installation functions for Content Translation module.
Code
function content_translation_install() {
// Assign a fairly low weight to ensure our implementation of
// hook_module_implements_alter() is run among the last ones.
module_set_weight('content_translation', 10);
// Skip the guidance messages about enabling translation features if the
// module was installed in the Drupal installation process.
if (InstallerKernel::installationAttempted()) {
return;
}
// Translation works when at least two languages are added.
if (count(\Drupal::languageManager()
->getLanguages()) < 2) {
$t_args = [
':language_url' => Url::fromRoute('entity.configurable_language.collection')
->toString(),
];
$message = t('This site has only a single language enabled. <a href=":language_url">Add at least one more language</a> in order to translate content.', $t_args);
\Drupal::messenger()
->addWarning($message);
}
// Point the user to the content translation settings.
$t_args = [
':settings_url' => Url::fromRoute('language.content_settings_page')
->toString(),
];
$message = t('<a href=":settings_url">Enable translation</a> for <em>content types</em>, <em>taxonomy vocabularies</em>, <em>accounts</em>, or any other element you wish to translate.', $t_args);
\Drupal::messenger()
->addWarning($message);
}