web-dev-qa-db-fra.com

Comment puis-je thématiser une page de termes de taxonomie?

Je travaille sur Drupal 8, en essayant d'obtenir un modèle de page pour chaque vocabulaire. J'ai essayé d'utiliser hook_theme_suggestions_HOOK_alter() pour y parvenir, mais je n'ai pas pu le faire.

J'ai essayé d'utiliser Devel avec kint(), mais aucune information de débogage n'est affichée sur mon écran.

Comment puis-je ajouter une suggestion de modèle pour un vocabulaire?

6
Atul

Vous pouvez suggérer un nouveau fichier de modèle avec le code suivant.

use Drupal\taxonomy\Entity\Term;

function THEME_NAME_theme_suggestions_page_alter(&$suggestions, &$vars) {
  if (\Drupal::routeMatch()->getRouteName() == 'entity.taxonomy_term.canonical' && $tid = \Drupal::routeMatch()->getRawParameter('taxonomy_term')) {
    $term = Term::load($tid);
    $suggestions[] = 'page__taxonomy__' . $term->getVocabularyId();
  }
}

Créez ensuite le fichier: page--taxonomy--VOCABULARYNAME.html.twig et personnalisez-le comme vous le souhaitez.

12
MrD