Question

J'ai hérité d'un site Drupal5 et j'ai été chargé de procéder à certaines modifications, mais je ne sais pas par où commencer.

Sur de nombreuses pages, les administrateurs disposent d'un menu qui vous permet d'effectuer certaines actions:

Vue d'ensemble Spécialistes Ressources et outils Sur le terrain Nouvelles Événements Cours Multimédia modifier Piste Flux de travail Paramètres

Cependant, sur certaines sections, il existe différentes options: Aperçu Disposition Réglages Paramètres de mise en page Avancée Le contexte Contenu Exporter

Je dois ajouter (Modifier, Suivre, Flux de travail, Paramètres) au deuxième menu, mais je ne sais pas comment faire.

Je vois dans page.tpl.php qu'il y a une région pour $ tabs, mais je ne peux pas comprendre comment cela est construit.

D'après ce que je peux dire, le thème est basé sur le thème Zen STARTERKIT.

Était-ce utile?

La solution

La variable $ tabs est normalement complétée par des entrées de menu de type MENU_LOCAL_TASK .

Consultez le système de menus , et plus particulièrement à hook_menu () pour avoir une idée de base. Cela se résume à un mappage de fonctions de rappel sur des chemins. Si une URL correspond à un chemin défini dans hook_menu (peut contenir des espaces réservés!), La fonction de rappel enregistrée pour ce chemin sera appelée pour générer le contenu de cette URL.

Le "type" de l'élément hook_menu définit la manière dont la combinaison chemin / rappel est représentée dans le système. Il peut s'agir d'un MENU_CALLBACK , ce qui signifie simplement la combinaison chemin / rappel enregistrée, mais aucune entrée de menu "réelle" correspondante. Un MENU_NORMAL_ITEM serait identique, mais avec une entrée de menu "standard", par exemple. dans le menu de navigation. Un MENU_LOCAL_TASK est identique, mais l'entrée de menu correspondante apparaît généralement dans les onglets $ et non dans un menu.

Tous les MENU_LOCAL_TASK qui partagent le même chemin de base se retrouveront sous la forme d'un groupe d'onglets. Donc, si vous aviez des chemins comme:

  • some / path / tab1
  • some / path / tab2
  • some / path / tab3

et tous ceux-ci étant définis comme MENU_LOCAL_TASK , vous verriez un onglet pour chacun d'eux sur chaque page qu'ils représentent.

Donc, pour trouver les endroits que vous devez modifier / améliorer, vous devez rechercher dans votre base de code toutes les implémentations hook_menu () qui définissent les chemins où ces onglets apparaissent. Notez qu'ils ne doivent pas tous être définis au même endroit, mais peuvent provenir de différentes implémentations hook_menu dans des modules différents. Ensuite, vous devez ajouter des définitions de menu pour les onglets que vous souhaitez ajouter, en mappant les chemins pertinents vers les fonctions de rappel. Les fonctions de rappel renverraient le contenu des pages que l’utilisateur devrait voir en cliquant sur les onglets.

Autres conseils

Si vous affichez node, il y a généralement déjà le lien Modifier dans les onglets $, car il n'est pas présent et pourrait être autre chose (une sorte de module de disposition). Vous devez ajouter les options Éditer / Suivre pour éditer / suivre quel type de contenu? Noeud spécifique ou quoi?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top