Desde que se presentó la primera versión de Magento, ha pasado ya más de un año y seguimos sin tener un "guía definitiva" de SEO para Magento en español. Durante todo este tiempo, se ha escrito mucho sobre el posicionamiento en buscadores, pero siempre en los foros, en algunos blogs, etc. Nunca se ha mostrado una visión completa de este tema y es hora de recopilar todo ese conocimiento en un sólo artículo: la guía SEO Magento.
Conforme las búsquedas, el SEO y Magento vaya evolucionando esta guía se irá actualizando con nuevos consejos, trucos y con las mejores prácticas. Es muy recomendable mantenerse actualizado a la última versión de Magento, siempre que sea posible, para, de esta forma, beneficiarse de las mejoras y de las correcciones de errores que se vayan incorporando.
Para ir haciendo un seguimiento de las correcciones que se van incorporando en cada versión de Magento, podemos consultar su Hoja de Ruta o los cambios incorporados en las diferentes versiones.
Índice de contenidos
Magento es una de las plataformas de comercio electrónico mejor preparada para los motores de búsqueda, sin necesidad de instalar extensiones adicionales, pero existen algunos errores conocidos, que deben ser corregidos a la hora de optimizar el SEO de nuestra tienda virtual con Magento. El primer paso debería ser siempre utilizar la última versión estable de Magento. A continuación deberemos activar la reescritura de las direcciones URL. Para activar esta opción, accederemos a la configuración de la siguiente forma: Administración -> Sistema -> Configuración -> Configuración-> Web -> Optimización para motores de búsqueda: Usar reescrituras del servidor web (Sí). Otra buena opción a configurar dentro de esta misma pantalla es "Añadir el código de tienda a las URLs", que será recomendable establecer a Sí en caso que tengamos configurada varias vistas de la tienda.
Activando la reescritura y la opción Añadir el código de tienda a las URLs, tendremos URLs com por ejemplo:
Dentro de la opción: "Optimización para motores de búsqueda", mencionada en el apartado anterior, y bajo las etiquetas: "Inseguro" y "Seguro", se pueden encontrar las URLs base, donde podemos fijar el dominio de nuestra tienda y escoger entre un dominio con www o sin www. Realizando esta configuración solo estaremos indicando cual es nuestra URL preferida, pero no estaremos realizando ninguna redirección desde la versión con www a la versión sin, ni viceversa. Por lo tanto, será buena idea crear una redirección 301 mediante el mod_rewrite de htaccess, que además de resolver el problema entre URLs con www y sin, impide que Magento añada el identificador de sesiones (SID) en nuestras URLs. A la hora de realizar dicha redirección, debemos asegurarnos de indicar el mismo dominio, tanto en Magento, como en el archivo .htaccess.
El siguiente ejemplo .htaccess servirá para redireccionar desde index.php a la raiz de la tienda:
RewriteBase / RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.mitiendamagento.com/ [R=301,L]
En caso que nuestra tienda se encuentre en un subdirectorio (http://www.mitiendamagento.com/tienda), utilizaremos el siguiente código:
RewriteBase /tienda/ RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /magento/index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.mitiendamagento.com/tienda/ [R=301,L]
Por defecto, nuestra instalación de Magento trae como título: "Magento Commerce", título poco adecuado para que nuestra tienda obtenga el tráfico que se merece. A la hora de redactar los títulos de nuestra tienda (productos, categorías, etc), deberemos tener en cuenta los siguientes aspectos:
En primer lugar, cambiaremos el título principal de nuestra tienda. Iremos a Sistema -> Configuración -> Cabecera HTML y dentro de "Título por defecto" introduciremos un buen título que describa perfectamente nuestra web. Este título aparecerá en varias páginas además de la página principal, por ejemplo, en la página de Contacto, en Términos de búsqueda más utilizados…
Para agregar el nombre de la tienda a todos los títulos, incluyendo las categorías y los productos, deberemos poner dicho nombre dentro del campo sufijo del título (Title Suffix), siendo buena idea mantener en blanco el prefijo (Title Prefix) para que los títulos de cada página queden siempre al comienzo (por importancia de las primeras palabras), y que justo después aparezca el nombre de la tienda. Mantendremos también en blanco tanto la "Descripción por defecto" como las "Palabras Clave por defecto". Para evitar que nuestra tienda sea indexada por los buscadores, mientras esta no esté en producción, puede ser útil fijar a "NOINDEX, NOFOLLOW" el parámetro robots (Default Robots). En el resto de casos, deberemos asegurarnos que este parámetro sea "INDEX, FOLLOW".
Ahora que estamos optimizando las cabeceras <head> de las páginas, puede ser una buena idea agregar el nuevo tag canonical que nos ayudará a eliminar el contenido duplicado de los índices de los buscadores, mejorando así nuestro SEO. Actualmente existe un módulo para gestionar las URLs Canónicas en Magento y lo podemos instalar mediante Magento Connect.
Podemos encontrar más información sobre este tag en las siguientes direcciones:
A primera vista, el sistema de administración de contenidos o CMS de Magento puede parecer carente de ciertas funcionalidades, pero es lo suficientemente potente y flexible para la mayoría de usos. Una de las ventajas de este CMS es que podemos controlar cada uno de los aspectos relacionados con las páginas (estado, vista, título, contenido, diseños, meta datos…). Una vez que hayamos introducido el contenido de cada página, deberemos escoger una URL Amigable (SEF URL; Search Engine Friendly URL), un título para la página (teniendo en cuenta los consejos del apartado 1.2), e ir a la pestaña de Meta Datos para escribir la descripción de la página (descripción o snippet que aparecerá en los buscadores).
Las palabras clave (Keywords) pueden dejarse en blanco, pero no está de más cumplimentar este campo si dicha página tiene cierta importancia. La descripción de la página tiene una función muy relevante: motivar a los usuarios para que la visiten, por lo tanto, deberemos redactarla concienzudamente describiendo lo que el usuario encontrará y de forma que llamemos su atención. Por eso, las buenas descripciones deben ser redactadas manualmente, y si preferimos que estas sean "generadas" de forma automática, lo mejor será dejarlas en blanco y ceder el control a los motores de búsqueda.
Si no utilizamos la meta descripción, el motor de búsqueda intentará encontrar los términos de la búsqueda dentro de nuestra página y automáticamente obtendrá un fragmento de texto alrededor de dichos términos. Esto nos proporcionará una o dos palabras en negrita dentro de la página de resultados y seguramente, una descripción poco llamativa.
Magento nos ofrece la posibilidad de añadir el nombre de las categorías en las URL de los productos, pero en las versiones actuales de Magento, esta funcionalidad no está muy bien desarrollada y genera contenido duplicado (por lo menos, hasta la versión 1.3.4.2). Al activar esta opción, el contenido de un producto podrá ser consultado desde varias URLs:
Mientras el funcionamiento de esta opción sea el mencionado, será buena idea deshabilitarla o aplicar alguna modificación del Core de Magento para poder utilizar los nombres de las categorías en las URLs de los productos sin generar contenido duplicado.
Para activar/desactivar esta opción, accederemos al siguiente apartado: Sistema -> Configuración -> Catálogo -> Catálogo -> Optimizaciones para el motor de búsqueda: Usar rutas de categorías para la URL de los productos (SI/NO).
Es el momento de establecer los detalles de cada una de nuestras categorías (Admin -> Catálogo -> Gestionar las Categorías). Los campos más importantes de las categorías en relación con el posicionamiento web son:
Magento permite indicar, para cada una de las vistas, un Nombre, una Descripción, un Título de Página y unos Meta Datos distintos. Esto supone una gran ventaja a la hora de posicionar nuestros contenidos en los buscadores.
La optimización de las páginas de los Productos es similar a la de las Categorías.
En tiendas muy grandes puede suponer un enorme trabajo adicional el hecho de tener que indicar todos los Meta Datos, pero Magento ofrece la opción de generarlos automáticamente para cada una de las Vistas del producto, marcando la casilla: "Usar Valor por defecto". Como ya se ha comentado en los puntos anteriores, lo más recomendable, para conseguir buenos resultados, es redactar manualmente los Meta Datos. Si indicamos el Meta Título, deberemos tener en cuenta que estaremos sobreescribiendo el título por defecto (este contiene el nombre de las categorías, el nombre del producto, el prefijo y el sufijo), pero se mantendrá tanto el prefijo como el sufijo establecidos en la configuración global de la tienda.
Uno de los aspectos relacionados con el SEO, que con frecuencia se pasa por alto, es la forma como gestionamos nuestras imágenes. Por ejemplo, si escribimos buenos textos alternativos y pensamos bien los nombres que le ponemos a los archivos, podemos conseguir un incremento de nuestras visitas gracias a los motores de búsqueda de imágenes. Además, estaremos mejorando la accesibilidad de nuestra página, y por lo tanto, ayudando a aquellas personas con dificultades, que utilizan lectores de pantalla y que sin los textos alternativos serán incapaces de entender el contenido de dichas imágenes.
Por defecto, las imágenes serán renombradas con el título del producto, y lo mismo sucederá con los títulos y textos alternativos. Con un poco de esfuerzo adicional, podremos indicar buenos títulos y textos alternativos para cada una de las imágenes. Bajo la pestaña "Imágenes", dentro de la información del producto, podemos definir las etiquetas para cada una de las imágenes, este valor será utilizado tanto para el texto alternativo, como para el título de la imagen. Por supuesto, podemos indicar dichas etiquetas para cada una de las vistas de la tienda.
Las plantillas que trae Magento, como por ejemplo: "Default Theme", "Blue Skin" o la "Modern Theme", no hacen un buen trabajo en relación con los encabezados, desde el punto de vista del posicionamiento web. Para hacernos la vida más fácil, el equipo de Yoast ha creado una nueva plantilla que toma como base la plantilla "Magento Blank Theme" y que incorpora todas las mejorar mencionadas en esta guía de SEO para Magento. Esta plantilla la podemos encontrar entre las contribuciones de Magento con el nombre: Blank Magento SEO Theme.
Por defecto, el logotipo de la página suele ser un <h1>,pero sólo debería serlo en la página principal. En el resto de páginas, el logo debería ser, como mucho, un <h3>. Lo más importante es conseguir que el título de cada página tenga una etiqueta <h1>, por ejemplo, en la página de una categoría el título más importante o <h1> debería se el nombre de dicha categoría y de igual forma, en la página de un producto.
El siguiente paso consiste en limpiar el exceso de etiquetas de encabezado que restan importancia a las que realmente lo son o deberían serlo. Por ejemplo, podría ser buena idea deshacerse de los encabezados de las columnas laterales, o dar relevancia a los textos de la tienda (incluyendo palabras clave). No existe ninguna razón por la que las palabras clave deban estar dentro de un <h4>, por lo tanto, será mejor que cambiemos todas las etiquetas <h4> que aparecen dentro de <div class="head"> por etiquetas <strong>.
Ahora pasaremos a optimizar nuestro contenido. En las páginas de las categorías pondremos los nombres de los productos dentro de etiquetas <h3> y el nombre de la categoría dentro de una <h1>. En las páginas de los productos, debemos poner el nombre del producto dentro de una <h1>.
Para obtener más información acerca de porqué es importante tener buenos encabezados, podemos leer este artículo sobre el HTML semántico y el SEO.
Todo el código javascript y CSS que tengamos directamente dentro de los ficheros de nuestra plantilla deberían ser movidos a archivos externos (archivos js y CSS) para mantener limpia nuestra plantilla y mejorar el SEO de Magento. Con estos cambios, nos aseguraremos de que los usuarios podrán almacenar estos archivos en caché en la primera carga de la página, y de que los motores de búsqueda no tienen que descargar el mismo código la mayoría de las veces.
Un factor muy importante, en relación con el número de páginas que un motor de búsqueda puede indexar dentro de nuestra tienda en un sólo día, es la velocidad de carga.
Podemos realizar varias acciones para mejorar la velocidad de carga de nuestro Magento:
Otro aspecto que debemos tener en cuenta es el número de archivos externos que se cargan en cada petición de página. Por cada archivo que el usuario descarga desde nuestra página web, el navegador tiene que crear una nueva conexión con el servidor y esto supone que necesitaremos más tiempo para descargar la página completa. Por eso, será buena idea reducir el número de archivos externos combinándolos en uno solo. Por defecto, Magento permite combinar casi todos los archivos Javascript en uno sólo, mediante la opción: Sistema -> Configuración -> Avanzado -> Desarrollador -> Ajustes de Javascript -> Combinar archivos Javascript (Sí).
Magento no realiza esta tarea con las hojas de estilo y, por ejemplo, la plantilla por defecto trae 6 hojas de estilo diferentes. Nosotros podemos combinar el contenido de estas hojas de estilo en un solo archivo, exceptuando el contenido del archivo print.css, que debe mantenerse por separado. Podemos realizar esta combinación manualmente o podemos utilizar el módulo Fooman Speedster module, que además de hacer el trabajo de fusión por nosotros, se encargará de comprimir y cachear tanto los archivos javascript como los css. Antes de instalar el módulo Speedster, deberemos tener en cuenta sus requisitos, como, por ejemplo, que el mod_rewrite esté activado y que nuestro servidor soporte archivos .htaccess. En caso que utilicemos URLs Canónicas en Magento junto con las extensión Fooman Speedster, deberemos reemplazar el módulo de URLs Canónicas por esta otra versión.
Una vez que hayamos revisado todos los aspectos básicos, podríamos reducir toda la problemática restante a un único tema: el contenido duplicado. Para los productos de nuestro catálogo, al menos, las siguientes URLs muestran exactamente el mismo contenido:
Además de estas URLs, también tendremos las páginas de comentarios donde Magento muestra casi el mismo contenido que en la ficha de los productos. Otro problema de este tipo lo encontraremos en las categorías, donde podemos llegar a tener contenido duplicado a causa de la navegación por capas (filtros) y/o las opciones de ordenación. Esto significa, que en el peor de los casos, un producto puede estar disponible, al menos, en 4 páginas además de la página donde realmente debería mostrarse.
Para evitar esta problemática, vamos a deshacernos de todos los grupos de contenido duplicado, permitiendo que estos sean rastreados por los motores de búsqueda (follow), pero evitando que sean indexados (noindex). También corregiremos los problemas mencionados para las categorías en relación con la navegación por capas y la ordenación de los resultados.
Las páginas sin contenido como pueden ser la URLs de las imágenes, la página de contacto, etc, son páginas para las que debemos realizar ajustes, de forma que los motores de búsqueda no las indexen, pero que rastreen todos los enlaces que puedan encontrar dentro. Para realizar dichos ajustes, existe la extensión: Yoast robots meta module, que nos permitirá ajustar el tag meta robots para cada una de las páginas sin contenido.
Otro ajuste que deberemos realizar a la hora de optimizar nuestro SEO en Magento, consistirá en evitar que las arañas sigan aquellos enlaces poco relevantes para nuestro negocio, como por ejemplo, la página de login, el proceso de compra, la lista de productos deseados y otras páginas sin contenido. Los mismo sucede con los enlaces hacia nuestros feeds RSS, la navegación por capas, enlaces como agregar a la lista de productos deseados, agregar a la comparación, etc. Actualmente no existen extensiones para agregar el parámetro: rel="nofollow" en dichos enlaces, por lo que deberemos realizarlo manualmente y directamente sobre la plantilla.
Para ayudar a los motores de búsqueda a entender el contenido duplicado de nuestra tienda, tenemos la posibilidad de indicar, en cada una de nuestras páginas, la URL principal utilizando el nuevo tag para URLs Canónicas. Para aplicar este tag disponemos de un módulo sencillo de instalar: URLs Canónicas para Magento (Canonical URLs for Magento).
Los Sitemaps en XML són una forma sencilla de ayudar a que los motores de búsqueda localicen nuestro contenido. Los Sitemaps no nos ayudarán a posicionar mejor, pero si que conseguirán que nuestro contenido quede indexado de forma más rápida. Podemos crear un Sitemap XML manualmente de la siguiente forma: Admin -> Sistema -> Configuración -> Google Sitemap -> Agregar un Sitemap, indicamos el nombre del archivo resultante, la ruta donde se almacenará y la vista o vistas que queremos incluir, presionaremos sobre el botón: Generar y Guarda y ya tendremos nuestro Sitemap creado.
A continuación deberemos indicar a los buscadores donde se encuentra ubicado nuestro Sitemap XML y para eso disponemos de varias opciones:
Siempre que sea posible, puede ser buena idea utilizar ambas opciones y en caso de no ser así, por lo menos utilizaremos la opción del robots.txt de la siguiente forma:
Sitemap: /sitemap.xml
El proceso de regeneración del Sitemap no se realiza de forma periódica y automatizada. Para asegurarnos de que este archivo se encuentra actualizado cuando los motores de búsqueda lo consulten, es buena idea utilizar un tarea programada en el servidor (cron job), que se encargue de actualizar el contenido del Sitemap. Para informarnos sobre la creación de tareas programadas o cron jobs en Magento, podemos consultar la siguiente dirección: http://www.magentocommerce.com/wiki/how_to/how_to_setup_a_cron_job.
Esta guía de SEO para Magento cubre los aspectos más importantes que debemos tener en cuenta a la hora de optimizar nuestra tienda. La versión que aquí se expone es una traducción personal del artículo original escrito por Joachim Houtman, que podemos encontrar en la web de Yoast.
Actualización – 13-02-2010
La versión 1.4 de Magento incluye la posibilidad de indicar una URL diferente por cada una de las vistas para cada producto y categoría. Esto quiere decir que podremos optimizar nuestras URLs para cada uno de los idiomas de nuestra tienda. También se han realizado mejoras a nivel de plantilla, se ha mejorado el sistema de fusión de archivos javascript y se ha incluido posibilidad de fusionar archivos CSS.
Tags: Experto Magento, Freelance Magento, Magento, Posicionamiento en buscadores, SEO Magento, Tiendas virtuales
Es un buen listado de cosas a tener en cuenta, muchas gracias por compartirlo.
Gracias Ana!!!
Trabajas habitualmente o has trabajado con Magento?
Gracias Sergio, nos ha sido muy útil la guía.
Saludos.
Nicolás