Chris@0: translateToLangcode)->save(); Chris@0: $this->rebuildContainer(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Enables translations where it needed. Chris@0: */ Chris@0: protected function enableTranslation() { Chris@0: // Enable translation for the current entity type and ensure the change is Chris@0: // picked up. Chris@0: \Drupal::service('content_translation.manager')->setEnabled('node', 'article', TRUE); Chris@0: \Drupal::service('content_translation.manager')->setEnabled('taxonomy_term', $this->vocabulary->id(), TRUE); Chris@0: drupal_static_reset(); Chris@0: \Drupal::service('router.builder')->rebuild(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Adds term reference field for the article content type. Chris@0: */ Chris@0: protected function setUpTermReferenceField() { Chris@0: $handler_settings = [ Chris@0: 'target_bundles' => [ Chris@0: $this->vocabulary->id() => $this->vocabulary->id(), Chris@0: ], Chris@0: 'auto_create' => TRUE, Chris@0: ]; Chris@0: $this->createEntityReferenceField('node', 'article', $this->termFieldName, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED); Chris@0: $field_storage = FieldStorageConfig::loadByName('node', $this->termFieldName); Chris@0: $field_storage->setTranslatable(FALSE); Chris@0: $field_storage->save(); Chris@0: Chris@0: entity_get_form_display('node', 'article', 'default') Chris@0: ->setComponent($this->termFieldName, [ Chris@0: 'type' => 'entity_reference_autocomplete_tags', Chris@0: ]) Chris@0: ->save(); Chris@0: entity_get_display('node', 'article', 'default') Chris@0: ->setComponent($this->termFieldName, [ Chris@0: 'type' => 'entity_reference_label', Chris@0: ]) Chris@0: ->save(); Chris@0: } Chris@0: Chris@0: }