Pasar contenido de Blogger a Drupal sin perder SEO

Actualmente no es suficiente tener una buena web para existir en Internet, también hay que salir en los buscadores. Y esto pasa por las técnicas SEO, que siempre hay que tener presentes en el desarrollo web.

Trasladar nuestro contenido estático de la antigua web a la nueva en Drupal ha sido casi tan sencillo como copiar y pegar en CKEditor. Sin embargo teníamos mas de 120 páginas alojadas en blogspot, el sistema de Blogger, que en algunos casos estaban bien posicionadas en los buscadores. Había que trasladar todo ese contenido al nuevo sistema. Y esto requiere tener presentes varios aspectos SEO que veremos mas adelante. Trataré de explicarlo por etapas por si alguien tiene igual necesidades. Evidentemente, saltándome el paso de instalar Drupal y ponerlo andar de forma básica, tampoco me pararé a explicar cosas que debes saber ya si te has puesto a montar un CMS en tu alojamiento web. No obstante si indicaré qué módulos son necesarios.

Traslado de contenido de Blogger a Drupal

Esta es la parte mas sencilla.

Exportación desde Blogger

En Blogger exportamos nuestro blog. Entramos en su panel de control -> Configuración -> Herramientas de blog -> Exportar Blog

Este fichero los subimos a nuestro servidor a un directorio accesible desde la web. El propio directorio dónde está instalado Drupal nos sirve.

Cuestiones previas a la importación en Drupal

Antes de hacer nada te recomiendo algunos módulos previos que deberías activar en vistas al SEO de tu web.

URL limpias y automáticas con SEO en mente

Activa las URL limpias. Instala Pathauto para que el sistema cree url mas útiles para el SEO que node/78. Lo que hace es crear url en base al título del contenido. Aunque puede configurarse de forma muy flexible en base a patrones y opciones. Un consejo para que no pagues la misma novatada que yo por no pararme a leer la información en Drupal de cada uno de los módulos: Instala también Transliteration. Esto translitera caracteres con acentos a su equivalente sin el mismo; tremendamente util para hacer urls legibles de los títulos que llegan acentos. Yo me puse a modificar el código fuente de Pathauto, algo sencillo de hacer, pero totalmente innecesario. Configura las dos opciones relacionadas con ASCII-96 que harán desaparecer esos acentos en títulos en castellano o catalán. También sería interesante pasar a minúsculas la mayúsculas e indicar los artículos y otras palabras que quieres que no aparezcan en la url final, por ejemplo: a, de, por, y, el, ...

En mi caso también he cambiado los patrones de los distintos contenidos para que apunten a su propio directorio: Artículos -> articles; Pages -> pages, etc. Esto mejora el resultado final de Pathauto.

 

Respetado de estilos del contenido

Si aún no lo has hecho crea un estilo propio para los editores de la web que les permita ciertas libertades adicionales en el código html sin necesidad de que tengan que usar el formato de texto "Full HTML". Yo he creado "Filtered HTML Editor" para los editores del contenido. Esto evita los problemas del acceso total al HTML y tener que abrirle el grifo al formato "Filtered HTML" que será el que utilicen de principio los usuarios autentificados. Todo esto puede sonar a chino, pero os aseguro que la seguridad de vuestra web os lo agradecerá.

En la configuración de este formato de texto instala y activa WYSIWYG Filter. Desactiva "Limitar etiquetas HTML permitidas" puesto que este hace lo mismo pero con un mejor control de que tipo de atributos y estilos permitidos.

Ahora es el momento de revisar el código HTML de vuestras entradas en Blogger para respetar los formatos o hacer limpieza de etiquetas, atributos y estilos en la importación.

Podéis ir haciendo pruebas copiando el código html de las entradas individuales en Blogger y pegándolas en el editor en el formato de texto creado, "Filtered HTML Editor" en mi caso.

Si no realizáis este paso seguramente perdáis información de estilo en la importación. Creo que os merecerá la pena si tenéis algo de estilo configurado en vuestras entradas en blogspot.

Importación en Drupal

Necesitamos el módulo Blogger Importer y su dependencia QueryPath. Activamos ambos y nos vamos a admin/content/blogger_importer

Recuerda configurar dónde quieres descargar las etiquetas de Wordpress. Normalmente en Tags. Evidentemente, debes indicar ubicación del archivo xml resultado de la exportación de Blogger.

Activa dónde quieres importar la información, en que tipo de contenido Drupal, normalmente como "Artículo".

Selecciona el formato de texto a utilizar al importar las entradas de blogspot.

También puede importar imágenes. En mi caso las tengo en Picassa, así que ese trabajo lo dejo pendiente para mas adelante.

Una vez configurado podemos procesar el xml de la exportación de Blogger.

En función de la cantidad de entradas tardará mas o menos. No te preocupes mucho con esto, puedes darle tantas veces como quieras. Este proceso no importa los datos todavía, los mete en una caché para que tomemos posteriores decisiones.

Para poder importar los comentarios con sus datos de contacto hay que configurar en el tipo de Contenido Artículo, o el que selecciones, la opción para que los usuarios anónimos puedan indicar sus datos de contacto. Esto es necesario ya que los comentaristas de Blogger no estarán dados de alta en tu nueva instalación Drupal. Una vez importado podrás cambiar dicha configuración. Aunque si tienes pocos visitantes que comentan de forma respetuosa no debería importarte que aparezcan enlaces si tienes configuradas adecuadamente la relación "nofollow" en los enlaces.

Ahora ya si puedes importar los posts y comentarios. El sistema creará automáticamente las etiquetas que tenías en WordPress en el campo Tags de Drupal.

Una vez terminada la importación puedes borrar el archivo xml y el módulo de importación de Blogger, no los necesitarán a partir de ahora.. QueryPath también si no tienes más módulos que lo necesiten. 

Ajuste de datos importados

Hay unas cuestiones que tendrás que resolver con alguna sentencia SQL. Pero esto ya es opcional.

Los artículos se asignan al usuario anónimo y a todos los idiomas. A través del Phpmyadmin de tu panel de alojamiento, y un par de sentencias update SQL lo puedes resolver. Según el diseño que intuyo detrás de Drupal intuyo que no deberías cargarte nada pero esto si lo haces, siempre bajo tu responsabilidad. Uno que es muy quisquilloso con estos detalles, se ha atrevido, pero siempre con una copia previa de datos de por medio. Esto no lo explico para que solo se atrevan los que realmente se sientan cómodos en esos andurriales SQL.

Redirección de enlaces de Blogger a Drupal

Página 404 personalizada

Otro módulo imprescindible para un buen posicionamiento de la web. Instala Search 404. Cuando el usuario de nuestra web llega a un error de página no encontrada muestra un formulario que automáticamente hace una búsqueda según el contenido de la URL erronea.

Es muy útil para que no perder usuarios por cambio de direcciones web. El usuario encuentra automáticamente posibles destinos que apuntan posiblemente al contenido que está buscando. Si embargo su principal ventaja se verá posteriormente al integrarse con el módulo Redirect.

Redireccionar enlaces de Blogger a Drupal

En la configuración de nuestra página en Blogger, activamos las plantillas antiguas y sustituimos el código existente por el siguiente.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="<$BlogLanguageDirection$>">
<head>
<title><$BlogPageTitle$></title>
<script type="text/javascript">
<MainOrArchivePage>window.location.href='http://SUDOMINIO.es/'</MainOrArchivePage>
<Blogger><ItemPage>window.location.href='http://SUDOMINIO.es/<$BlogItemTitle$>'</ItemPage></Blogger>
</script></head><body>
<div style="border:#ccc 1px solid; background:#eee; padding:20px; margin:80px;">
<p>Esta página ha sido movida a la siguiente dirección:</p>
<h1>
<MainOrArchivePage><a href="//criterium.es/%3Ca%20href%3D"http://SUDOMINIO.es/"><" rel="nofollow">http://SUDOMINIO.es/"><$BlogTitle$></a></MainOrArchivePage>
<Blogger>
<ItemPage><a href="//criterium.es/%3Ca%20href%3D"http://SUDOMINIO.es/<" rel="nofollow">http://SUDOMINIO.es/<$BlogItemTitle$>"><$BlogItemTitle$></a></ItemPage>
</Blogger>
</h1>
</div>
</body></html>
<!-- Sustituye SUDOMINIO por tu dominio --->

Esto enviará todos los enlaces generales a nuestro blog y los enlaces permanentes a la página de búsqueda para que el usuario encuentre el contenido que estaba buscando. Al contrario que otros ejemplos que encontrará por ahí, pasa el título de la entrada en blogspot, que será muy util a Search 404 para buscar el contenido que quiere el usuario de forma automática. La redirección solo funciona para los navegadores con Javascript habilitado, los que no lo tengan (cosa improbable hoy día) y los motores de búsqueda solo verán en enlace a la nueva ubicación de la entrada.

Redirecciones 301 internas

Si has trasladado ya cierto contenido desde otro alojamiento seguramente lo tengas, pero si no es así, instala Redirect. Te permitirá rederigir enlaces dentro de la propia web. Imprescindible para recuperar posicionamiento y enlaces antiguos.

Cuando se accede a un enlace configurado, redirige al correcto indicando al navegador o el buscador que ha cambiado de dirección. Esto nos permite mantener el SEO de un web sin duplicar el contenido, con las posibles penalizaciones por contenido duplicado que esto puede suponer en los buscadores. Si no te suena de nada, busca SEO y redirección 301 en google. Lo necesitarás.

No nos interesa solo rederigir a los usuarios al nuevo contenido, cosa que parcialente tenemos solucionada con el módulo Search 404, sobre todo nos interesa pasar el posicionamiento de nuestro antiguos enlaces *.blogspot a los de nuestro nueva web. Este módulo hace precisamente esto. Cuando el usuario es redirigido desde blogpot a nuestra web, es enviado a una dirección formada por nuestro dominio y el título de la entrada. Página, que como es evidente, no existe. Resolveremos este problema a continuación con Redirect.

Aquí podemos optar por dos posibilidades: 

  • La primera sería ir generando redirecciones 301 a medida que vamos  registrando los errores 404. Lo puedes ver en admin/config/search/redirect/404. Esto opción es lenta y no nos interesa ya que lo que queremos es posicionar cuanto antes el contendio de blogspot cuanto antes desde nuestra web.
  • Lo mejor es que utilices las estadísticas para descubrir las web mas visitadas en blogspot y fuerza el redireccionado directamente visitando las mismas. El módulo Search 404 no facilitará la tarea ya que una vez lanzadas desde webanalitys o similar, y estando como administrador del nuevo sitio, nos mostrará un enlace para dar de alta la redirección. Si no quieres dar de alta todas las páginas, da al menos las mas visitadas, que se supone que son las mejor posicionadas en los buscadores y revisa posteriormente los registros de Search 404 para ir dando de alta el resto a medida que te lleguen visitantes.

Por cierto, ten en cuenta la penalización de los buscadores al duplicado de información, al considerarlo como un intento ilegítimo de conseguir posicionamiento. Si tienes mas dominios o has trasladado contenido desde otras ubicaciones redirección 301 al canto.

Pasar nuevo contenido a Google y Bing para que lo indexen sus motores de búsqueda.

XML Sitemap será un módulo que tienes que tener instalado como buen aprendiz de técnico SEO. Ahora es el momento de incorporar el tipo de contenido Artículo al mismo y enviarselo a los buscadores. Este módulo hace todo el trabajo por tí. Otro imprescindible.

Si a estas alturas ya estás confundido con tanto SEO, te puede interesar instalar el módulo SEO Checklist. Te aconsejo que utilices el WYSIWYG Filter para indicar la relación nofollow en todos tus enlaces salientes de tu dominio. Es mejor controlar con quien compartes tu ranking. Aunque este es tema para otra entrada.

 

Bueno espero que tanto royo le sea de utilidad a alguien. Al mi al menos me servirá como registro del procedimiento para un uso futuro.

Producto: 
Tags: