¿Cómo llamar a una función cuando se está viendo un nodo?


8

Cada vez que veo una página de nodo, quiero llamar a una función pero no estoy seguro de cómo hacerlo.

Estaba pensando que debería usar hook_menu()y declarar la ruta como nodo /%, y adjuntar una función de devolución de llamada a esa ruta. ¿Es esa la forma correcta o hay una forma correcta / mejor?


¿Es esto muy simple de responder?
harshal

1
Sí, la respuesta es muy simple, pero no estoy seguro de por qué eso hace que esta sea una mala pregunta. El voto negativo parece innecesario de la OMI. Edité para aclarar y hacer obvio que tú mismo has pensado en esto, con suerte eso será suficiente para apaciguar a los que no dicen :)
Clive

Debo admitir que la edición de Clive mejoró significativamente la legibilidad de esta pregunta :) +1 de mi parte. Las preguntas simples de responder cuando sabes que la respuesta no siempre son malas, a veces es difícil buscarlas en la red o en los documentos de drupal.og.
Mołot

Respuestas:


6

Puedes implementar hook_node_view()

Actúe sobre un nodo que se está ensamblando antes de renderizar.

p.ej

function MYMODULE_node_view($node, $view_mode, $langcode) {
  if ($node->type == 'the_type' && $view_mode == 'full') {
    // Call your function here.
    my_function($node);
  }
}

2

El módulo de reglas también puede reaccionar al acceso URL. Puede especificar una acción que se supone que sucederá en el evento si la condición es verdadera.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.