By admin , 1 April, 2023 Inject States to FormBase use Drupal\Core\State\StateInterface; /** * The state store. * * @var \Drupal\Core\State\StateInterface */ protected $state; /** * Drush command constructor. * * @param \Drupal\Core\State\StateInterface $state * T Tags states dependency injection
By admin , 1 April, 2023 Save custom data to States Reading StateA single value.$val = \Drupal::state()->get('key');Multiple key/value pairs.$pairs = \Drupal::state()->getMultiple($keys);Writing StateA single value.\Drupal::state()->set('key','value');Multiple values. Tags states
By admin , 1 April, 2023 Make custom entity translatable Add to file src/Entity/MyEntity.php/** * Defines the my entity class. * * @ContentEntityType( ... * data_table = "my_entity_field_data", * translatable = TRUE, ... * entity_keys = { ... * "langcode" = "langcode" * }, ... * ) */Add ->setTranslatable(TRUE) to baseFieldDefinitions. For example Tags translate custom entity
By admin , 31 March, 2023 Get the current language programmatically Get Language ID$language = \Drupal::languageManager()->getCurrentLanguage()->getId();Get Language name$language = \Drupal::languageManager()->getCurrentLanguage()->getName(); Tags translate
By admin , 31 March, 2023 "Another request may be synchronizing configuration already" error You can remove lock using drushdrush ev "\Drupal::lock()->release('config_importer');" Tags drush
By admin , 31 March, 2023 Translate string in TWIG Use {% trans %} and {% endtrans %} Tags twig translate
By admin , 31 March, 2023 Translate string in JavaScript Use Drupal.tvar optionsList = '<option value="" selected>' + Drupal.t('Navigate...') + '</option>'; Tags javascript translate
By admin , 5 March, 2023 Register form custom submit /** * Implements hook_form_FORM_ID_alter(). */ function mymodule_form_user_register_form_alter(&$form, FormStateInterface $form_state, $form_id) { $form['actions']['submit']['#submit'][] = '_mymodule_user_register_form_submit'; } Tags form register
By admin , 1 March, 2023 Change page title (preprocess) /** * Implements hook_preprocess_HOOK(). */ function EXAMPLE_preprocess_page_title(&$variables) { $current_path = \Drupal::service('path.current')->getPath(); if ($current_path == '/user/login') { $variables['title'] = ' Tags title preprocess
By admin , 1 March, 2023 Change text to local task tab /** * Implements hook_local_tasks_alter(). */ function EXAMPLE_local_tasks_alter(&$local_tasks) { $local_tasks['entity.user.edit_form']['title'] = new TranslatableMarkup('Personal data'); } Tags tabs