diff --git a/core/modules/field/field.api.php b/core/modules/field/field.api.php index 5ba15c958b8b32dcab36b9ea732ced63e02abad7..33f2581aba74b30f060af272c33a750633fff27b 100644 --- a/core/modules/field/field.api.php +++ b/core/modules/field/field.api.php @@ -1085,7 +1085,7 @@ function hook_field_attach_purge(\Drupal\Core\Entity\EntityInterface $entity, $f * $display_options argument and the view_mode element is set to '_custom'. * See field_view_field() for more information on what its $display_options * argument contains. - * - language: The language code used for rendering. + * - langcode: The language code used for rendering. */ function hook_field_attach_view_alter(&$output, $context) { // Append RDF term mappings on displayed taxonomy links. diff --git a/core/modules/field/field.module b/core/modules/field/field.module index db31d7790b8a5f61c27476caa5a31828b001e44d..13fb22cadf5382722dbee979b819e895424a0f14 100644 --- a/core/modules/field/field.module +++ b/core/modules/field/field.module @@ -866,6 +866,7 @@ function field_view_field(EntityInterface $entity, $field_name, $display_options 'entity' => $entity, 'view_mode' => $view_mode, 'display_options' => $display_options, + 'langcode' => $display_langcode, ); drupal_alter('field_attach_view', $result, $context); diff --git a/core/modules/field/lib/Drupal/field/Tests/DisplayApiTest.php b/core/modules/field/lib/Drupal/field/Tests/DisplayApiTest.php index 09336417b145e11be262e5c16063dc7450f4481d..39d959403a81830af83ec74ff0987b39bc78e8b6 100644 --- a/core/modules/field/lib/Drupal/field/Tests/DisplayApiTest.php +++ b/core/modules/field/lib/Drupal/field/Tests/DisplayApiTest.php @@ -99,6 +99,7 @@ function testFieldViewField() { $setting = $display['settings']['test_formatter_setting_multiple']; $this->assertNoText($this->label, 'Label was not displayed.'); $this->assertText('field_test_field_attach_view_alter', 'Alter fired, display passed.'); + $this->assertText('field language is ' . LANGUAGE_NOT_SPECIFIED, 'Language is placed onto the context.'); $array = array(); foreach ($this->values as $delta => $value) { $array[] = $delta . ':' . $value['value']; diff --git a/core/modules/field/tests/modules/field_test/field_test.module b/core/modules/field/tests/modules/field_test/field_test.module index c7e3b1cda0c28f32452678f476a1e348aecac878..15b3ea5873a75151dcec49e3bc49ce9de65bb569 100644 --- a/core/modules/field/tests/modules/field_test/field_test.module +++ b/core/modules/field/tests/modules/field_test/field_test.module @@ -193,6 +193,10 @@ function field_test_field_attach_view_alter(&$output, $context) { if (!empty($context['display_options']['settings']['alter'])) { $output['test_field'][] = array('#markup' => 'field_test_field_attach_view_alter'); } + + if (isset($output['test_field'])) { + $output['test_field'][] = array('#markup' => 'field language is ' . $context['langcode']); + } } /**