ctools - view php
Vistas Drupal: Generar archivo xml (4)
¿Hay un plugin de vistas que pueda usar para generar un archivo xml? Me gustaría algo para poder elegir los campos en los que me gustaría estar en el xml y cómo aparecerían (como una etiqueta o un atributo de la etiqueta principal).
Por ejemplo: Tengo un tipo de contenido Imagen que tiene tres campos: título, tamaño y dimensiones. Me gustaría crear una vista que podría generar algo como esto:
<pictures> <picture size="1000" dimensions="10x10"> <title> title </title> </picture> <picture size="1000" dimensions="10x10"> <title> title </title> </picture> ... </pictures>
Si no hay nada ya implementado, ¿qué debería implementar? Pensé en implementar un complemento de visualización, un estilo, un complemento de fila y un controlador de campo. ¿Me equivoco?
No me gustaría hacerlo con las plantillas porque no puedo pensar en una manera de hacerlo reutilizable con plantillas.
Hay una descripción algo antigua de este proceso en los foros de Drupal . Hace referencia a Drupal 4.7 y 5.x. Sospecho que los pasos para 5.x serían la misma técnica si no es el mismo código para Drupal 6.
Un plugin de estilo personalizado es definitivamente capaz de hacer esto; Arreglé uno para dar salida a los feeds Atom en lugar de RSS. Puede encontrar un poco de suerte comenzando con Views Bonus Pack o Views Datasource . Ambos intentan proporcionar XML y otros formatos de salida para los datos de Views, aunque este último era un proyecto Google Summer of Code y no se ha actualizado recientemente. Definitivamente un posible punto de partida, sin embargo.
En Drupal 8, el módulo Servicios ahora es parte del núcleo (Servicios web RESTful). Esto le permitirá proporcionar cualquier entidad en xml o json. También con vistas.
Lea más aquí: https://drupalize.me/blog/201401/introduction-restful-web-services-drupal-8
Es posible que desee consultar la implementación de otro tema para XML o el uso del módulo Servicios . Algunos detalles al respecto (desde su página de proyecto):
Una solución estandarizada para crear API para que los clientes externos puedan comunicarse con Drupal. De fábrica, su objetivo es soportar todo lo que Drupal Core admite y proporciona una API de nivel de código para que otros módulos expongan sus funciones y funcionalidades. Proporciona complementos de Drupal que permiten a otros crear sus propios mecanismos de autenticación, formatos de solicitud y formatos de respuesta.
Ver también: http://cmsproducer.com/generate-how-to-drupal-node-XML-XHTML