---
url: 'https://metadrop.net/es/proyectos/stubhub-magazine'
title: 'Stubhub Magazine'
author:
  name: 'Sandra Martín'
  url: 'https://metadrop.net/es/sobre/sandra-martin'
date: '2017-11-06T10:11:11+00:00'
updated: '2026-06-08T14:06:56+00:00'
type: project
summary: 'Caso de estudio Stubhub Magazine'
tags:
  - Drupal
  - 'Drupal 8'
  - Contribution
image: 'https://metadrop.net/sites/default/files/styles/full/public/imce/image/project/header_stubhub.jpg.webp?itok=g1g_ZOzu'
published: true
og:
  determiner: Automatic
  site_name: Metadrop
  'image:url': 'https://metadrop.net/sites/default/files/styles/full/public/imce/image/project/header_stubhub.jpg.webp?itok=g1g_ZOzu'
  'image:type': image/jpeg
  'image:width': '1110'
  'image:height': '740'
  'image:alt': 'Stubhub Magazine'
  street_address: 'Calle Manuel Luna, 12, 3 Dcha'
  locality: Madrid
  region: Madrid
  postal_code: '28020'
  country_name: España
  email: hola@metadrop.net
  phone_number: '910053180'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      '@type': Article
      name: 'Stubhub Magazine'
      headline: 'Migración de contenido desde Wordpress a Drupal y uso extensivo de JSON para revista online'
      description: 'Migración de contenido desde Wordpress a Drupal y uso extensivo de JSON para revista online'
      about:
        - Drupal
        - 'Drupal 8'
        - Contribuciones
      image:
        '@type': ImageObject
        url: 'https://metadrop.net/sites/default/files/styles/full/public/imce/image/project/header_stubhub.jpg.webp?itok=g1g_ZOzu'
        width: '1110'
        height: '740'
      datePublished: '2017-11-06T11:11:11+0100'
      dateModified: '2026-06-08T16:06:56+0200'
      author:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
      mainEntityOfPage: 'https://metadrop.net/es/proyectos/stubhub-magazine'
    -
      '@type': Organization
      '@id': 'https://metadrop.net/#organization'
      url: 'https://metadrop.net/'
      name: Metadrop
      sameAs:
        - 'https://www.drupal.org/metadrop'
        - 'https://twitter.com/metadrop'
        - 'https://asociaciondrupal.es/partner/metadrop'
        - 'https://www.linkedin.com/company/metadrop'
      logo:
        '@type': ImageObject
        url: 'https://metadrop.net/themes/custom/mdrop_radix/logo-metadrop-500-500.jpg'
        width: '500'
        height: '500'
    -
      '@type': ItemPage
      '@id': 'https://metadrop.net/es/proyectos/stubhub-magazine'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Inicio
            item: 'https://metadrop.net/es'
          -
            '@type': ListItem
            position: 2
            name: 'Casos de Estudio'
            item: 'https://metadrop.net/es/proyectos'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
---
 

 

# Stubhub Magazine

## Migración de contenido desde Wordpress a Drupal y uso extensivo de JSON para revista online



 

Caso de estudio Stubhub Magazine



 

 [Explorar](#scroll-to-content) 

 



   



 Es una revista online especializada en música donde encontraremos artículos y novedades sobre nuestros artistas favoritos, festivales, conciertos. Es parte de [StubHub](https://en.wikipedia.org/wiki/StubHub "StubHub"), un web que permite la compra-venta de entradas para espectáculos musicales, deportivos y otros eventos en vivo de todo el mundo perteneciente a [eBay](https://es.wikipedia.org/wiki/EBay "eBay").

### ¿Por qué Drupal?

La seguridad es importante en todos nuestros desarrollos y, como no, también para Stubhub Magazine. El uso de un CMS constantemente actualizado y con un gran [equipo de seguridad](https://www.drupal.org/drupal-security-team/general-information "Drupal Security Team") como Drupal era la opción más interesante para el cliente.

De la misma forma, siendo Stubhub una empresa con presencia en 50 países, la posibilidad que ofrece Drupal para crear sitios multilenguaje se antojaba fundamental, así como la visión a futuro de que este sitio crezca y pueda ser fácilmente escalable.

Por todo esto y porque además este CMS proporciona gran versatilidad debido a la enorme comunidad que hay detrás, Drupal ofrecía replicar un proyecto existente en otra tecnología con relativa facilidad.

### El proyecto

#### La meta

Nuestro reto fue recrear la página existente en WordPress a Drupal 8, lo que implicaba una migración de contenido. Para esta tarea, nos apoyamos en el módulo contribuido [WordPress Migrate](https://www.drupal.org/project/wordpress_migrate "WordPress Migrate").

Una vez acotada la migración, nos enfrentamos a la “prueba de los editores”: siendo WordPress un CMS orientado principalmente a blogs, ofrece una completa gestión de contenidos que debía ser reproducida e incluso mejorada con Drupal, y (perdón por el spoiler) ¡superamos la prueba!

Fuimos capaces de establecer un completo flujo de publicación de contenidos que permite mantener la información en varios estados (borradores, artículos archivados, revisiones de contenidos) y soporta la programación de tareas para que sean publicadas en un momento concreto decidido por el editor del sitio.



 

 

 

 



 







 

#### Los requisitos


Las peticiones del cliente eran claras: respetando el diseño original, de debían mantener todas las funcionalidades de la página original.

Tras las reuniones iniciales con Stubhub Magazine en las que les transmitimos nuestra forma de trabajar basada en BDD ([Behavior Driven Development](https://metadrop.net/es/articulos/drupalcamp-spain-2017-bdd-behaviour-driven-development "Behaviour Driven Development")), se establecieron las líneas de actuación a seguir.

Algunas de las funcionalidades puestas como [historias de usuario](https://es.wikipedia.org/wiki/Historias_de_usuario "Historia de usuario") para este proyecto fueron:

- Como Editor quiero programar la revisión de un artículo para que sea publicada automáticamente
- Como editor quiero crear cuestionarios



 

 

 

 



 







 

#### ¡Y estos fueron los resultados!



Al finalizar este desarrollo, además de conseguir cubrir sobradamente las funcionalidades de WordPress en el que se basaba la versión anterior de la web, se ha aportado la experiencia de nuestro equipo para desarrollar dos nuevos módulos: [**JSON Form**](https://www.drupal.org/project/json_form "JSON Form") y [**SlickQuiz field**](https://www.drupal.org/project/slickquiz_field "SlickQuiz Field"). Estos dos módulos nos permiten crear formularios en forma de los típicos tests con preguntas y respuestas que miden los conocimientos del usuario sobre algún tema. Cada respuesta puede ser personalizada para mostrar un mensaje según la respuesta y mostrar puntuación obtenida.

El módulo **JSON Form** permite generar cualquier estructura de formulario que queramos a partir de una configuración en JSON. Para ello se usa la librería [JSON Forms](https://github.com/brutusin/json-forms "Librería JavaScript JSon Forms "). Al editar un nodo el formulario se interpreta permitiendo al editor añadir las preguntas y respuestas del test.

Respecto al módulo **SlickQuiz field** permite añadir un campo Drupal a cualquier tipo de contenido para la creación de cuestionarios de tipo test que no serán guardados en la base de datos (no necesario ya que es un test para el usuario, no hace falta que la web recuerde el resultado).

Permite la creación de cuestionarios de una forma muy flexible:

- Personalización de mensajes en función del número de aciertos según unos rangos predeterminados.
- Inclusión de valores por defecto con un quiz base.
- Número de preguntas ilimitadas.
- Número de respuestas ilimitadas para cada pregunta.
- Personalización de mensajes de acierto y fallo para cada respuesta.

Así, JSON Forms permite definir el formulario en general y SlickQuiz field permite integrarlo con nodos y mostrarlo como un test para el usuario. Un ejemplo del resultado final puede verse en este [test que mide tus conocimientos de bandas sonoras de televisión](https://www.stubhub.es/magazine/test-bandas-sonoras-series-television "TEST: ¿Cuánto sabes sobre bandas sonoras de series de televisión?").



 

 

 

 



 

 

 



 

 

 



 







 

### Lo que hemos aprendido



Debido a las características del proyecto, se detectó la necesidad de los cuestionarios que impulsaron el desarrollo de los módulos descritos antes y además, de un parche para la previsualización de tokens en el módulo [Yoast Seo](https://www.drupal.org/project/yoast_seo "Yoast SEO") que podéis consultar en las Contribuciones a la comunidad.

Destacable además es la automatización de test en todos los proyectos de Metadrop.

### Y además



Además de SlickQuiz field, algunos módulos usados en el proyecto han sido:

- [Redirect](https://www.drupal.org/project/redirect "Módulo Redirect") - Permite a los usuarios redireccionar URL a URL elegidas por ellos.
- [Pathauto](https://www.drupal.org/project/pathauto "Módulo Pathauto") - URLs limpias generadas automáticamente.
- [CKEditor Media Embed plugin](https://www.drupal.org/project/ckeditor_media_embed "Módulo CKEditor Media Embed plugin") - incrustar contenido en CKEditor.
- [Migrate](https://www.drupal.org/project/migrate "Módulo Migrate") - Gestión de migraciones.
- [Google Analytics ](https://www.drupal.org/project/google_analytics "Módulo Google Analytics ")- Facilita rastrear el sitio por Google Analytics añadiendo un código de rastreo Javascript.
- [Crop API](https://www.drupal.org/project/crop "Módulo Crop API") - API para almacenar recortes de imágenes.
- [Content Moderation](https://www.drupal.org/project/content_moderation "Módulo Content Moderation") - Para gestionar estados de moderación de contenido.
- [Disqus](https://www.drupal.org/project/disqus "Módulo Disqus") - Servicio web de Disqus para comentarios.
- [Rabbit Hole](https://www.drupal.org/project/rabbit_hole "Módulo Rabbit Hole") - Comportamiento de la URL a nivel de nodo.
- [Scheduler](https://www.drupal.org/project/scheduler "Módulo Scheduler") - Publicar y despublicar contenido de forma programada.
- [Metatags](https://www.drupal.org/project/metatag "Módulo Metatags") - Gestión de metaetiquetas para todo tipo de contenidos.
- [Style Guide](https://www.drupal.org/project/styleguide "Style Guide") - Guía de estilo del sitio.

### Contribuciones a la comunidad



https://www.drupal.org/project/json\_form

https://www.drupal.org/project/slickquiz\_field

https://www.drupal.org/node/2892598