Aller au contenu principal
loading

Titre dynamique avec Drupal : title callback et title arguments

POSTÉ DANS Drupal 7 TAGS Drupal 7 AUTEUR herve COMMENTAIRES 3

Sous Drupal, pour générer une entreée de menu avec un titre statique, le code se présente ainsi (hook_menu) :

function monmodule_menu(){
  $items = array();

  $items['ma-page/%'] = array(
    // la propriété title
    'title' => t('Mon titre statique'),
    // le reste des propriétés 
    'page callback' => 'monmodule_page',
    'page arguments' => array(1),
    'type' => MENU_NORMAL_ITEM,
    );
    return $items;
}

Pour le rendre dynamique, il suffit d'utiliser les propriétés "title callback" et "title arguments".

Prenons un exemple simple : si on considère que l'URL est du type ma-page/73, avec 73 un identifiant de taxonomie, il suffit de faire comme suit :

function monmodule_menu() {
  $items = array();
  $items['ma-page/%'] = array(
    // la propriété title
    'title' => t('Mon titre statique'),
    'title callback' => 'monmodule_titre',
    'title arguments' => array(1),
    // le reste des propriétés
    'page callback' => 'monmodule_page',
    'page arguments' => array(1),
    'type' => MENU_NORMAL_ITEM,
  );
  return $items;
}

function monmodule_titre($tid) {
  $term = taxonomy_term_load($tid);
  return t("Mon titre dynamique : @taxo", array('@taxo' => $term->name));
}

 

Bien évidemment, l'utilisation de "title arguments" n'est pas obligatoire.



3 commentaire

Derniers articles

DDEV : obtenir la liste des services
DDEV : obtenir la liste des services Posté le 27 janvier 2021
Partager un répertoire local sous Docker
Partager un répertoire local sous Docker Posté le 27 janvier 2021
Docker et Localhost Mac
Docker et Localhost Mac Posté le 27 janvier 2021
Affichage de la requête SQL d'un db_select
Affichage de la requête SQL d'un db_select Posté le 24 septembre 2020

A propos de Web'Up