15
Migración de datos en Drupal 7 Javier Gómez @jgomez2 http://codigoweb.org Alicante, 27 de Noviembre de 2013

Migración de datos en drupal 7 migrate - feeds

Embed Size (px)

DESCRIPTION

En esta presentación explicamos como realizar importación de datos en Drupal 7 con los módulos feeds y migrate. Charla coorespondiente a la reunión de la comunidad de Alicante el dia 27 Nov 2013 en Camon Alicante. https://drupal.org/project/migrate https://drupal.org/project/feeds https://groups.drupal.org/node/377328 http://www.tucamon.es/contenido/encuentro-comunidad-de-usuarios-de-drupal-noviembre http://www.codigoweb.org

Citation preview

Page 1: Migración de datos en drupal 7   migrate - feeds

Migración de datos

en Drupal 7

Javier Gómez @jgomez2

http://codigoweb.org

Alicante, 27 de Noviembre de 2013

Page 2: Migración de datos en drupal 7   migrate - feeds

Sobre mí

• Javier Gómez• Desarrollador web Freelance desde 2010• Miembro de la Asociación Española de Drupal

http://asociaciondrupal.esHe colaborado en la organización de las DrupalCamp Spain 2011 y 2012

• Miembro fundador de la comunidad Drupal de Alicante creada en Octubre de 2011, con reuniones mensuales en CAMON http://groups.drupal.org/alicante

• Actualmente realizo proyectos en Drupal combinando Sitebuilding y Theming

• Podeis encontrarme en:twitter.com/fjgomez2 es.linkedin.com/in/codigoweb www.codigoweb.org

Page 3: Migración de datos en drupal 7   migrate - feeds

• Formas de importar datos en drupal 7:– A mano• Opción poco recomendable y que todos alguna vez

hemos utilizado

– Módulo Feeds https://drupal.org/project/feeds

– Módulo Migrate https://drupal.org/project/migrate

Migración de datos

Page 4: Migración de datos en drupal 7   migrate - feeds

Feeds

• Muy fácil de configurar desde UI• Admite diferentes fuentes (RSS, CSV, Atom, etc.) • Mapeo de campos.• Funcionalidad ampliable mediante plugins.• Integración con drupal Commerce.• Integración con drush.

Page 5: Migración de datos en drupal 7   migrate - feeds

Feeds UI

Page 6: Migración de datos en drupal 7   migrate - feeds

Migrate

• Framework orientado a objetos.• Se configura programando.• Fuentes de datos: CSV, XML, JSON, MySql, Oracle, etc.• Puedes migrar cualquier tipo de contenido (nodos,

taxonomias, etc.), usuarios, ficheros, … • Integración con drush.• UI para lanzar migraciones (Insert, rollback, update, etc)• Alta curva de aprendizaje.

Page 7: Migración de datos en drupal 7   migrate - feeds

Migrate

• hook_migrate_api()• class myclaseMigrate extends Migration {}

Lo que necesitamos para implementar migrate:

• Creamos un modulo • camon.module : vacio• camon.info : dependencias• Camon.install : info de instalación y registro• camon.migrate.inc : implementación del hook• miclase.inc : implementación de la clase

En la práctica:

Page 8: Migración de datos en drupal 7   migrate - feeds

Migrate

Camon.info• Como en cualquier otro módulo, contiene la información del módulo y las

dependencias

Page 9: Migración de datos en drupal 7   migrate - feeds

Migrate

camon.migrate.inc• Contiene el hook que informa a drupal de las clases que tiene nuestra

migración.

Page 10: Migración de datos en drupal 7   migrate - feeds

Migrate

camon.install

• Aunque no es obligatorio, es aconsejable implementar el .install para que al desinstalar nuestro modulo se des-registren las clases

• Puede tener mas usos, p.ej. Crear tipos de contenido o taxonomias al activar el módulo.

Page 11: Migración de datos en drupal 7   migrate - feeds

Migrate

miclase.inc• Podemos llamarle como queramos con

extensión .inc siempre que lo incluyamos en el .info

• Podemos implementar varias clases en un mismos archivo o tener varios archivos .inc

Page 12: Migración de datos en drupal 7   migrate - feeds

Migrate

miclase.inc

• Origen de datos• Destino de datos• Mapeo Origen-

Destino• Field Handler• Destination

Handler• Mapeo de campos

Page 13: Migración de datos en drupal 7   migrate - feeds

Migrate

• Si todo es correcto podemos registrar la clase activando nuestro módulo

• Una vez registrada podemos verla en• /admin/content/migrate• Drush mirate-status (ms)

• Y lanzar importaciones desde UI o Drush• drush migrate-import (mi) TestNode

Importación de datos

Page 14: Migración de datos en drupal 7   migrate - feeds

Migrate

• drush migrate-auto-register (mar)• drush migrate-status (ms)• drush migrate-import (mi)• drush migrate-rollback (mr)• drush migrate-audit (ma)• drush migrate-deregister --orphans • drush migrate-import migrador –limit=”10 seconds”• drush migrate-import migrador –feedback=”10

items”

Comandos drush