Blog Importer registra automáticamente las redirecciones 301 nativas de Shopify al migrar las publicaciones de tu blog. Esto garantiza una transferencia fluida de tu posicionamiento en los motores de búsqueda (SEO) desde tu sitio antiguo a tu nueva tienda Shopify sin ninguna configuración manual compleja.

Sin embargo, existen patrones de URL específicos que la función nativa de Shopify no puede manejar.

Patrón no compatible: URL con parámetros de consulta

La función de redirección estándar de Shopify tiene una limitación estructural: no puede identificar con precisión las URL que contienen un ”?” (parámetros de consulta).

  • Ejemplo compatible: example.com/old-post
  • Ejemplo compatible (parámetros en el segundo nivel o superior): example.com/news/?pid=123
  • Ejemplo no compatible: example.com/?pid=123 (URL parametrizadas directamente bajo el dominio raíz)

Estos tipos de URL no se pueden redirigir utilizando Blog Importer ni la configuración de redirección predeterminada de Shopify.

La solución

Para migrar con éxito las páginas con estas estructuras de URL heredadas, debes usar JavaScript del lado del cliente para enrutar manualmente a los visitantes a la página correcta en su navegador.

¿Por qué es necesario JavaScript?

Las redirecciones nativas de Shopify se procesan del lado del servidor. De forma sistémica, Shopify descarta cualquier información que siga a un ”?” en la URL, lo que hace imposible enrutar el tráfico condicionalmente en función de las diferencias de los parámetros.

Para resolver esto, necesitamos un “enrutamiento inteligente”: JavaScript lee instantáneamente la URL completa al cargar la página en el navegador del visitante y lo redirige dinámicamente al destino adecuado.

Cómo implementar mediante JavaScript (Código de ejemplo)

Coloca el siguiente código dentro del archivo theme.liquid de tu tema de Shopify, inmediatamente antes de la etiqueta de cierre </head>. Actualiza la variable redirectMap para que coincida con tus parámetros de URL antiguos y sus nuevas rutas correspondientes.

<script>
(function() {
  // Mapa de redirección: Parámetros de URL antiguos a nuevas rutas
  var redirectMap = {
    "?pid=123": "/blogs/news/article-a",
    "?pid=456": "/blogs/news/article-b",
    "?p=789": "/pages/contact"
  };

  var currentQuery = window.location.search;

  if (currentQuery && redirectMap[currentQuery]) {
    window.location.href = redirectMap[currentQuery];
  }
})();
</script>