Skip to main content
Drupal code

Main navigation

  • Home
  • Snippets
User account menu
  • Log in
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 State

A single value.

$val = \Drupal::state()->get('key');

Multiple key/value pairs.

$pairs = \Drupal::state()->getMultiple($keys);

Writing State

A 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 drush

drush 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.t

var 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

Pagination

  • First page
  • Previous page
  • …
  • Page 10
  • Page 11
  • Page 12
  • Page 13
  • Page 14
  • Page 15
  • Page 16
  • Page 17
  • Page 18
  • Next page
  • Last page

Tags Cloud

dependency injection(21) form(18) drush(14) views(11) twig(11) preprocess(9) field(8) node(7) translate(7) render(6) tabs(6) controller(5) config(5) phpstorm(5) file(5) entityTypeManager(5) routes(5) comment(4) database(4) jquery(4) service(4) roles(4) phpunit(3) php(3) cache(3) entity(3) slick(3) block(3) custom entity(3) javascript(3) user(3) taxonomy(3) guzzle(3) url(3) phpstan(2) event(2) commerce(2) template(2) schema(2) migration(2) libraries(2) date(2) access(2) ajax(2) photoswipe(2) permissions(2) logger(2) vscode(2) suggestions(2) states(2) title(2) fieldset(2) redirect(2) mysql(2) git(1) request(1) attribute(1) service provider(1) csv(1) PHPDoc(1) table(1) eslint(1) deprecation(1) theme(1) errors(1) wsod(1) settings.php(1) watchdog(1) pager(1) widget(1) module(1) file.usage(1) queue(1) exif(1) imagemagick(1) image(1) media(1) uuid(1) drupal.org(1) tests(1) renderer(1) array(1) exposed form(1) page manager(1) transliteration(1) random(1) entityQuery(1) development(1) mail(1) webform(1) register(1) textarea(1) label(1) input(1) batch(1) import(1) messenger(1)
RSS feed
Powered by Drupal