Estos son los tipos de datos probablemente no pero lo más probable content types. Lo que busca son
- una manera de relacionar los nodos (es decir. De contenido) de un tipo de contenido a los nodos de otra (chef de restaurante, menú para el restaurante, receta de menú, etc.).
- Una forma de mostrar información de nodos relacionados (relaciones directas o indirectas) cuando se muestra un nodo en particular.
La relación entre los nodos se puede lograr utilizando el módulo References (un puerto Drupal 7 del módulo nodereference
incluidos en CCK para Drupal 6). Esto le permite agregar referencias a nodos al editar otro. La relación se puede configurar para permitir que solo se haga referencia a los nodos del tipo especificado. Este tipo de referencia no es bidireccional y solo se puede navegar (con facilidad) desde el nodo de referencia, no desde el nodo al que se hace referencia. En Drupal 6, el Node referrer proporcionó un campo complementario para navegar la relación en ambos sentidos. Lamentablemente, todavía no ha sido ported to Drupal 7.
Las referencias pueden quedar obsoletas en un futuro próximo a favor del módulo Entity reference. Clanes de referencia de entidades para proporcionar consultas bidireccionales mediante vistas e integración adecuada con el módulo E ntity API. Lo posterior debe garantizar que la relación definida con el módulo sea completamente (problemáticamente) navegable y utilizable con módulos que utilicen los metadatos Entity (Seach API y otros).
Otra solución que también utiliza el sistema Entity es el módulo Relation. Proporciona relaciones bidireccionales completas. Estas relaciones son en sí mismas entidades realizables, lo que significa que usted agrega propiedades a las relaciones (por ejemplo, las fechas en que un chef comenzó y terminó trabajando en un restaurante).
Una vez que obtiene la relación, hay varias maneras de mostrar la información relacionada en una página de nodo. No conozco la relación, pero si References se comporta como la versión de Drupal 6, solo permitirá la visualización de información básica de los nodos directamente relacionados. Una solución es implementar hook_node_view()
en un módulo personalizado para navegar por la relación, recuperar los diferentes nodos, formatear la información recopilada mediante un theme hook personalizado y agregarlo al $node->content
para la representación.
Dado que la referencia de entidad se integra con la vista, debe poder construir una vista para mostrar el nodo relacionado con el nodo mostrado actualmente (utilizando el nodo actual como argumento contextual ). Luego puede incrustar la vista mediante programación en la vista de su nodo (nuevamente, a través del hook_node_view()
) o usar una pantalla de bloque.
Es posible que también desee consultar el sitio de Drupal Answers Beta. Cuantas más personas lo usen, mayores serán sus posibilidades de pasar de beta: http://drupal.stackexchange.com –