function locale_translation_build_sources

Same name and namespace in other branches
  1. 10 core/modules/locale/locale.translation.inc \locale_translation_build_sources()
  2. 11.x core/modules/locale/locale.translation.inc \locale_translation_build_sources()
  3. 9 core/modules/locale/locale.translation.inc \locale_translation_build_sources()
  4. 8.9.x core/modules/locale/locale.translation.inc \locale_translation_build_sources()

Build translation sources.

Parameters

array $projects: Array of project names. Defaults to all translatable projects.

array $langcodes: Array of language codes. Defaults to all translatable languages.

Return value

array Array of source objects. Keyed by project name and language code.

Deprecated

in drupal:11.4.0 and is removed from drupal:13.0.0. Use \Drupal::service(LocaleSource::class) ->sourceBuild($project, $langcode) instead.

See also

locale_translation_source_build()

https://www.drupal.org/node/3569330

File

core/modules/locale/locale.translation.inc, line 139

Code

function locale_translation_build_sources(array $projects = [], array $langcodes = []) : array {
  @trigger_error(__FUNCTION__ . '() is deprecated in drupal:11.4.0 and is removed from drupal:13.0.0. Use \\Drupal::service(LocaleSource::class)->sourceBuild($project, $langcode) instead. See https://www.drupal.org/node/3569330', E_USER_DEPRECATED);
  if (empty($projects)) {
    $projects = array_keys(\Drupal::service(LocaleProjectRepository::class)->getAll());
  }
  $sources = [];
  $locale_source = \Drupal::service(LocaleSource::class);
  foreach ($projects as $project) {
    foreach ($langcodes as $langcode) {
      $sources[$project][$langcode] = $locale_source->sourceBuild($project, $langcode);
    }
  }
  return $sources;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.