lunes, 29 de septiembre de 2014

Migrando tienda de Magento a Prestashop

Aunque sea a título principalmente formativo, estoy llevando un par de tiendas, una en Magento y otra en Prestashop con la idea de conocer más o menos bien ambas herramientas.

Magento

Hasta hace sólo unas semanas estaba trabajando para Animalling (grupo Hobby Zoo), comercio Magento, realizando algunas rutinas y módulos, lo cual, verdaderamente me llegaba a desesperar por su complejidad.
Si bien es cierto que llegué a hacer algunas cosas, el uso que hace Magento de las bases de datos es verdaderamente penoso.
El caso es que BioSanex también es una tienda Magento que quiero migrar a Prestashop, pues la verdad, es que cuando hemos tratado de controlar el stock con Magento, hemos tenido verdaderos problemas.

Prestashop

Prestashop me parece mucho más sencillo a la hora de mantener y sobre todo si se desean hacer desarrollos propios. He creado ya una versión paralela de BioSanex en Prestashop que estoy configurando para que el cambio sea sólo una cuestión de aspecto, pero en la medida de lo posible, no suponga una pérdida de funcionalidades ni de posicionamiento. Esta misma semana espero haber cambiado el producto.

Migración

Hay algunos problemas que aún no he resuelto y que posiblemente, los considere perdidos:

Migración de clientes

Respecto a los clientes, he realizado la exportación de Magento y la importación a Prestashop, pero claro, las contraseñas no son recuperables.
No es un problema mayor, pues es relativamente fácil informar al cliente que establezca una nueva, acompañada de un cupón de descuento, tal vez.

Documentos

Los documentos (pedidos, facturas, etc) sí que los doy por perdido, aunque se podría intentar la migración, casi prefiero empezar de cero.
NOTA: Claro que dichos documentos están registrados en la gestión comercial, o sea que no es información realmente perdida.

Funcionalidades

Existen varias funcionalidades que desarrollé en Magento, que ahora tengo que migrar a Prestashop, como por ejemplo la gestión de etiquetas que ahora sustuyo por una especie de Wiki donde explicar las utilidades de cada ingrediente, sus usos y sus contraindicaciones. Me está resultado relativamente fácil hacerlo con Prestashop.

Posicionamiento y SEO

Esta es la parte que creo que puede resultar de mayor interés y que puede aplicarse a cualquier tipo de migración de página web, bien por cambio de dominio, aplicación, etc.
Las URL de la nueva tienda no coinciden con la de la antigua. Existen algunas que pueden hacerse coincidir, pero por ejemplo, si nos centramos en los artículos, ambas aplicaciones disponen de un campo para poner una URL amigable (friendly), pero luego la forman de forma diferente. Pongamos por ejemplo el "Café verde de Obire" en dos tiendas distintas donde se ha configurado de la misma forma (o casi):
El primer ejemplo se corresponde con Magento, que coloca exáctamente el nombre que hemos detallado: "obire-cafe-verde-200-extracto-seco-45-60.html".
En el segundo ejemplo en cambio, podemos comprobar que Prestashop usa una plantilla en la que forzosamente tenemos que incluir el id del producto (ver Preferencias / SEO - URL): "{category:/}{id}-{rewrite}.html". En este caso, {rewrite} sería el texto que hemos establecido en el producto: "obire-cafe-verde-200-mg-extracto-seco-45-".
Prestashop no obliga a que todos los datos se rellenen, lo cual puede parecer extraño, pero en realidad localiza el producto por el id, por lo que cualquier cosa que se cambie si no se toca el id, nos llevaría a la ficha del producto.

Redirección 301

Lo bueno es que cuando hace la redirección, podemos hacer que retorne un código HTTP 301 para que quién envía la página (por ejemplo, si viene de Google, Google), sepa que la dirección ha cambiado y lo arregle.
Algunas páginas que han cambiado de ubicación, modificando el archivo .htaccess he podido hacer que redirija a la nueva, pero para éstas que no incluyen el id, es bastante más complicado, así que he hecho lo siguiente:
  • He creado una tabla en prestashop con 2 campos "antigua" y "nueva".
  • He modificado el .htaccess para lo que pueda redirigir con él.
  • He sobreescrito (override) el dispatcher para que antes que nada compruebe si se le ha pasado una de estas URL antiguas, en cuyo caso, realizo una redirección 301 a la nueva.
La verdad es que mientras siga desempleado, lo único que se me ocurre es formarme en este tipo de cosas y complementarlas con mi nueva faceta de amo de casa.
Espero que os sirva de ayuda.

No hay comentarios:

Publicar un comentario