Pregunta

He heredado un sitio de Drupal5 y se me ha asignado la tarea de realizar algunos cambios, pero no puedo averiguar dónde empezar a buscar.

En muchas páginas hay un menú disponible para administradores que le permite realizar ciertas acciones:

Descripción general Especialistas Recursos y herramientas En el campo Noticias Eventos Los cursos Multimedia Editar Pista Flujo de trabajo Configuración

Sin embargo, en algunas secciones, hay diferentes opciones: Avance Diseño Ajustes Opciones de diseño Avanzado Contexto Contenido Exportar

Necesito agregar (Editar, Seguimiento, Flujo de trabajo, Configuración) al segundo menú, pero no estoy seguro de cómo hacerlo.

Veo en page.tpl.php que hay una región para $ tabs, pero no puedo entender cómo se construye esto.

Por lo que puedo decir, el tema se basa en el tema Zen STARTERKIT.

¿Fue útil?

Solución

La variable $ tabs normalmente se llena con entradas de menú de tipo MENU_LOCAL_TASK .

Eche un vistazo al sistema de menú , y especialmente en hook_menu () para obtener una idea básica. Se reduce a una asignación de funciones de devolución de llamada a las rutas. Si una URL coincide con una ruta definida en hook_menu (¡puede contener marcadores de posición!), Se llamará a la función de devolución de llamada registrada para esa ruta para generar el contenido de esa URL.

El 'tipo' del elemento hook_menu define cómo se representa la combinación de ruta / devolución de llamada en el sistema. Puede ser un MENU_CALLBACK , lo que significaría solo la combinación de ruta registrada / devolución de llamada, pero no la correspondiente entrada de menú "real". Un MENU_NORMAL_ITEM sería el mismo, pero con una entrada de menú 'estándar', por ejemplo. en el menú de navegación. Un MENU_LOCAL_TASK es el mismo, pero la entrada de menú correspondiente generalmente aparece en las pestañas $ y no en un menú.

Todos los MENU_LOCAL_TASK que comparten la misma ruta base terminarán como un grupo de pestañas. Así que si tuvieras caminos como:

  • algunos / path / tab1
  • algunos / path / tab2
  • algunos / path / tab3

y todos estos se definieron como MENU_LOCAL_TASK , vería una pestaña para cada uno de ellos en cada página que representan.

Para encontrar los lugares que necesita modificar / mejorar, debe buscar en su base de código todas las implementaciones de hook_menu () que definen las rutas donde se muestran esas pestañas. Tenga en cuenta que no es necesario que todos estén definidos en el mismo lugar, sino que pueden provenir de diferentes implementaciones de hook_menu en diferentes módulos. De lo que tendría que agregar definiciones de menú para las pestañas que desea agregar, asignando las rutas relevantes a las funciones de devolución de llamada. Las funciones de devolución de llamada devolverían el contenido de las páginas que el usuario debería ver al hacer clic en las pestañas.

Otros consejos

Si está mostrando un nodo, normalmente ya existe el enlace Editar en las pestañas $, ya que no está presente, podría ser otra cosa (algún tipo de módulo de diseño). Necesita agregar opciones de Edición / Seguimiento para editar / realizar un seguimiento de qué tipo de contenido? ¿Nodo específico o qué?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top