Blog Importer registrerar automatiskt Shopifys inbyggda 301-omdirigeringar när du migrerar dina blogginlägg. Detta säkerställer en smidig överföring av din sökmotorrankning (SEO) från din gamla webbplats till din nya Shopify-butik utan någon komplex manuell konfiguration.

Det finns dock specifika URL-mönster som Shopifys inbyggda funktion inte kan hantera.

Mönster som inte stöds: Webbadresser med frågeparametrar

Shopifys standardfunktion för omdirigering har en strukturell begränsning: den kan inte identifiera webbadresser som innehåller ett ”?” (frågeparametrar) korrekt.

  • Exempel som stöds: example.com/old-post
  • Exempel som stöds (parametrar på 2:a nivån eller djupare): example.com/news/?pid=123
  • Exempel som inte stöds: example.com/?pid=123 (Parametriserade webbadresser direkt under rotdomänen)

Dessa typer av webbadresser kan inte omdirigeras med Blog Importer eller Shopifys standardinställningar för omdirigering.

Lösningen

För att lyckas migrera sidor med dessa gamla URL-strukturer måste du använda JavaScript på klientsidan för att manuellt dirigera besökare till rätt sida i deras webbläsare.

Varför är JavaScript nödvändigt?

Shopifys inbyggda omdirigeringar bearbetas på serversidan. Systematiskt tar Shopify bort all information som följer ett ”?” i webbadressen, vilket gör det omöjligt att villkorligt dirigera trafik baserat på parameterskillnader.

För att lösa detta behöver vi “smart dirigering”: JavaScript läser direkt den fullständiga webbadressen vid sidladdning i besökarens webbläsare och omdirigerar dem dynamiskt till rätt destination.

Hur man implementerar via JavaScript (Exempelkod)

Placera följande kod i din Shopify-temas theme.liquid-fil, omedelbart före den avslutande </head>-taggen. Uppdatera variabeln redirectMap så att den matchar dina gamla URL-parametrar och deras motsvarande nya sökvägar.

<script>
(function() {
  // Omdirigeringskarta: Gamla URL-parametrar till nya sökvägar
  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>