Pour rediriger un utilisateur lorsqu'il se connecte on peut utiliser le hook HOOK_user_login().
Le code qui suit ne redirige que si une redirection n'est pas déjà présente dans l'url :
Les snippets sont des bouts de code.
Présenté ici de manière volontairement « brute », ces snippets ont vocation à servir d'aide mémoire.
N'hésitez-pas à poser un commentaire si vous rencontrez un problème avec un des éléments.
Vous pouvez utiliser la navigation via les tags présents sur la droite
Pour rediriger un utilisateur lorsqu'il se connecte on peut utiliser le hook HOOK_user_login().
Le code qui suit ne redirige que si une redirection n'est pas déjà présente dans l'url :
Dans drupal 8, parfois le thème ajoute des suggestions de template qui vont bien, en fonction du type de noeud et du view_mode, mais ça n'est pas toujours le cas, voici comment faire pour ajouter des suggestions de template via le hook HOOK_theme_suggestions_HOOK() :
$fields['date_naissance'] = BaseFieldDefinition::create('datetime')
->setLabel(t('Date de naissance'))
->setRequired(TRUE)
->setDefaultValue(NULL)
->setSetting('datetime_type', 'date')
->setDisplayOptions('form', arraDrupal vient avec des types d'entité prédéfinis (Node, ou User par exemple). À ces type d'entité il est possible d'ajouter des fields, mais il est aussi possible d'ajouter des propriétés.
Voici comment ajouter des propriétés (prénom et nom) aux utilisateurs.
Dans le fichier monmodule.links.menu.yml :
monmodule.menu.cle:
title: 'Titre de ma mage'
description: 'Liste des options'
route_name: view.admin_options.page
parent: system.admin_content
weight: 90
Quelques explications :
$fields['photo'] = BaseFieldDefinition::create('image')
->setLabel(t('Photo'))
->setSetting('file_directory', 'formateurs/photos')
->setSetting('file_extensions', 'png jpg jpeg')
->setSetting('min_resolution', '400x400')
Pour faire un champ de base référence à un terme de taxonomie, on va utiliser le type "entity_reference", en lui passant évidement le nom du vocabulaire, (ici "option_types") :
Dans Drupal 8 la gestion des menus et des route à été complètement revue, le hook_menu_alter n'existe plus.
Pour créer un alias d'url dans le code, au sein d'une fonction d'update par exemple on appelle le service path.alias_storage :