php drupal drupal-6 drupal-nodes

php - ¿Cómo hago un enlace de nodo directamente a su contenido de archivo en DRUPAL 6?



drupal-6 drupal-nodes (2)

Tengo un elemento de menú llamado "Productos" que al hacer clic muestra todos los nodos creados por el tipo de contenido "producto". Cada nodo "producto" tiene un campo de archivo adjunto con un archivo adjunto.

Si hago clic en un nodo "producto", me lleva al nodo como se esperaba y puedo ver todos los campos en el nodo, incluido el campo PDF:

Quiero pasar el cursor sobre el menú "Productos", ver los diferentes productos como un menú desplegable en el menú y cuando se hace clic en un producto, quiero que NO vaya al nodo, sino que abra el PDF adjunto al nodo. de mostrar, por ejemplo, / product / african-decor ... debe ir a product / african_decor.pdf que se adjunta al nodo:


Hay un par de formas en que esto se puede lograr.

Puede usar el módulo Token de Menú que le permite usar varios campos en sus rutas de menú. Al construir el patrón de tokens, puede que necesite crear una URL absoluta usando el token [site-url] .

También asegúrese de que la casilla de verificación uses tokens esté marcada.

De esta manera es un poco menos elegante.

Suponiendo que no desea visitar realmente el tipo de contenido del producto y siempre descargará el PDF, puede sobrescribir la plantilla para el tipo de contenido del product y redirigir a la URL del PDF.

Necesitarías crear

node--product.tpl.php

Y reemplace el contenido con

header("Location: " . $pdf_field); // $pdf_field might be $node->field_pdf[0][''value''];


Puede implementar hook_taxonomy_menu_path con un módulo personalizado y anular la base en función de los nodos asociados con el término. En la devolución de llamada, devuelva la ruta del archivo adjunto en el nodo.

  • Dado el hecho de que cada término solo tiene un nodo
  • Dado el hecho de que cada nodo tiene solo un archivo adjunto