FunktionerPluginPrissättningResurser
Ändra språk
ResurserHur du bygger en flerspråkig migrering från Shopify till WordPress

Hur du bygger en flerspråkig migrering från Shopify till WordPress

SimplePoTranslate Team5 mars 2026
Hur du bygger en flerspråkig migrering från Shopify till WordPress

Du har spenderat månader på att bygga en flerspråkig Shopify-butik. Dina produktbeskrivningar är översatta till franska, tyska och spanska. Ditt kassaflöde fungerar på tre språk. Sedan bestämmer du dig för att migrera till WordPress och WooCommerce för mer kontroll, bättre marginaler eller plugin-flexibilitet.

Produktinformationen överförs bra. Bilderna följer med. Men dina översättningar? De försvinner.

Detta är den dolda kostnaden för en flerspråkig WordPress-migrering som ingen varnar dig för. Shopify låser in dina översättningar i sitt eget proprietära system, och WordPress använder en helt annan arkitektur. Utan en tydlig plan kommer du att spendera veckor på att återuppbygga det du redan hade. Den här guiden ger dig den planen.

Varför flerspråkiga migreringar misslyckas (och Shopify gör det värre)

Plattforms migreringar är smärtsamma nog med enspråkiga butiker. Lägg till flera språk så multipliceras komplexiteten. Rotorsaken är arkitektonisk: Shopify och WordPress hanterar översättningar på fundamentalt olika sätt.

Shopifys översättningsmodell är en sluten värld

Shopify lagrar översättningar som metadata kopplade till resurser via Translate and Adapt API. Varje produkt, samling och sida har översättningsposter kopplade till Shopifys interna resurs-ID:n.

När du exporterar din butik med ett migreringsverktyg som Cart2Cart, LitExtension eller en CSV-export får du innehållet på standardspråket. Översättningarna? De finns i ett separat lager som de flesta migreringsverktyg ignorerar helt.

Vad som faktiskt exporteras (och vad som går förlorat)

Här är vad ett typiskt migreringsverktyg från Shopify till WordPress överför:

InnehållstypÖverförs?Överförs översättningar?
Produkttitlar och beskrivningarJaNej
Samlings-/kategorinamnJaNej
BlogginläggJaNej
Sidor (Om, Kontakt)JaNej
Tematexter (knappar, etiketter)NejNej
Kassa-/e-posttexterNejNej
NavigeringsmenyerDelvisNej

Mönstret är tydligt. Ditt standard språkinnehåll migreras. Dina översättningar gör det inte. Och även om du extraherar dem manuellt kan du inte bara klistra in Shopify-översättningar i WordPress. Systemen talar olika språk, bokstavligen.

Kartläggning av Shopify-språk till WordPress-översättningsfiler

Innan du börjar bygga om måste du förstå hur WordPress hanterar flerspråkigt innehåll. Det är här de flesta migreringsguider brister.

Förstå Gettext-systemet

WordPress använder Gettext lokaliseringssystem. Istället för att lagra översättningar i ett databaslager läser det från statiska binärfiler (.mo-filer) kompilerade från läsbara .po-filer.

En .po-fil ser ut så här:

msgid "Add to Cart"
msgstr "Ajouter au panier"

msgid "Search results for %s"
msgstr "Résultats de recherche pour %s"

Varje WordPress-tema och plugin levereras med en .pot-mallfil som innehåller alla översättningsbara texter. Du skapar en .po-fil för varje språk, fyller i översättningarna, kompilerar den till .mo och släpper den i rätt katalog.

Detta är systemet som dina Shopify-översättningar måste kartläggas till.

Problemet med språk kod mismatch

Shopify använder IETF-språktaggar (en, fr, de). WordPress använder lokala koder med regionvarianter (fr_FR, de_DE, es_ES). Under migreringen måste du mappa varje Shopify-språk till rätt WordPress-locale. Om du gör detta fel kan WordPress inte hitta dina översättningsfiler.

Vanliga mappningar som snubblar folk på:

  • Shopify pt mappar till WordPress pt_PT (Portugal) eller pt_BR (Brasilien) - inte utbytbara
  • Shopify zh-CN mappar till WordPress zh_CN, men Shopify zh-TW mappar till zh_TW
  • Shopify nb (norska bokmål) mappar till WordPress nb_NO

Döp dina .po- och .mo-filer med WordPress locale-koden: themename-fr_FR.po, woocommerce-de_DE.mo. En felaktig kod innebär att WordPress ignorerar filen tyst.

En steg-för-steg flerspråkig WordPress-migreringsarbetsgång

Här är det konkreta arbetsflödet för att bevara dina översättningar under en migrering från Shopify till WordPress.

Steg 1: Exportera och granska dina Shopify-översättningar

Innan du rör WordPress, extrahera allt från Shopify. Använd Shopify Admin API eller ett verktyg som Shopify Translate CSV Export för att hämta dina översättningar till strukturerade filer.

# Using Shopify CLI to export translations
shopify app translate export --locale fr
shopify app translate export --locale de
shopify app translate export --locale es

Granska exporter. Räkna hur många texter du har per språk. Identifiera vilka som är produktinnehållsöversättningar (hanteras av ditt CMS eller flerspråkiga plugin på WordPress) jämfört med tema-/UI-textöversättningar (hanteras av .po-filer).

Steg 2: Konfigurera din WordPress- och WooCommerce-språkstruktur

På din nya WordPress-installation konfigurerar du din språkinfrastruktur innan du importerar något innehåll.

  1. Gå till Inställningar > Allmänt och ställ in ditt webbplatsspråk
  2. Installera språkpaket för varje målspråk via Inställningar > Allmänt > Webbplatsspråk
  3. Skapa översättningskatalogstrukturen:
/wp-content/languages/
/wp-content/languages/plugins/
/wp-content/languages/themes/

För produktinnehållsöversättningar (titlar, beskrivningar) behöver du ett flerspråkigt innehållsplugin som WPML eller Polylang. Men för tema- och plugin-UI-texter - knapparna, etiketterna, felmeddelandena och kassaflödet - vill du ha statiska .po/.mo-filer. Detta är det molnbaserade tillvägagångssättet som undviker plugin-uppblåsthet.

Steg 3: Konvertera dina översättningar till PO-format

Dina Shopify-tematextöversättningar måste konverteras till Gettext .po-format. Det är här migreringen blir teknisk.

Om dina Shopify-översättningar är i JSON- eller CSV-format kan du konvertera dem till .po med ett skript eller verktyg. Nyckeln är att mappa varje källtext till ett msgid/msgstr-par:

import csv

with open('shopify_translations_fr.csv', 'r') as infile, \
     open('theme-fr_FR.po', 'w') as outfile:
    outfile.write('msgid ""\nmsgstr ""\n')
    outfile.write('"Language: fr_FR\\n"\n\n')
    reader = csv.DictReader(infile)
    for row in reader:
        outfile.write(f'msgid "{row["key"]}"\n')
        outfile.write(f'msgstr "{row["translation"]}"\n\n')

Detta ger dig en utgångspunkt, men ditt nya WordPress-tema och WooCommerce-installation kommer att ha hundratals texter som inte fanns i Shopify. Du kan inte återanvända en Shopify "Lägg till i varukorgen"-översättning för WooCommerce eftersom den omgivande kodkontexten är annorlunda. WooCommerce-texten kan vara Add to cart (gemener "c") eller inkludera en %s-variabel för produktnamnet.

Det är här de flesta fastnar. Du har partiella översättningar från Shopify och ett stort gap av oöversatta WordPress-specifika texter.

Hur du översätter luckorna utan att börja om

De goda nyheterna: du behöver inte översätta 5 000 WooCommerce-texter för hand. De dåliga nyheterna: du kan inte hoppa över dem heller, annars kommer din butik att visa en skärande blandning av franska rubriker och engelska felmeddelanden.

Tema- och plugin-texter behöver fortfarande översättas

Ditt WordPress-tema har sin egen .pot-fil. WooCommerce har sin egen. Varje plugin du installerar - betalningsgateways, fraktberäknare, formulärbyggare - har var och en översättningsbara texter. Dessa fanns inte i din Shopify-butik.

Det snabbaste tillvägagångssättet är att översätta dessa stora .po-filer i batch snarare än text för text. Ladda upp ditt temas .pot-fil, välj målspråk och låt AI ta hand om det tunga arbetet.

Batch-översättning av stora WooCommerce-filer

WooCommerce språkfil är massiv. Med tusentals texter som täcker allt från varukorgmeddelanden till skattefelkoder är det den enskilt största översättningsuppgiften i varje migrering. SimplePoTranslate hanterar detta genom Smart Batching - delar upp överdimensionerade filer i säkra bitar, bearbetar dem parallellt och slår samman resultaten tillbaka till en enda ren fil.

Den kritiska detaljen: dina översatta filer måste bevara varje kodvariabel exakt som den visas i källan. En %s-platshållare i en WooCommerce-e-postmall kan inte ha ett blanksteg tillagt eller en position bytt under översättningen. Det är här syntaxlåsning förhindrar trasiga variabler från att nå din produktionsbutik.

Med SimplePoTranslates Multi-Format Output får du .po, .mo, .json, .php och .xliff-filer i en enda ZIP-nedladdning. Detta är särskilt användbart under migreringen eftersom olika delar av din WordPress-stack kan konsumera översättningar i olika format. Ditt tema läser .mo-filer. En headless frontend kan behöva .json. En anpassad integration kan förvänta sig .xliff. En översättningskörning täcker dem alla.

Undvika de tre vanligaste migrationsöversättningsfelen

Även med rätt arbetsflöde finns det fallgropar som är specifika för plattforms migreringar som överraskar erfarna utvecklare.

Trasiga variabler i transaktionsmejl

WooCommerce transaktionsmejl är täta med platshållare: {order_number}, {customer_name}, %1$s, %2$s. Om din översättningsprocess korrumperar även en av dessa får kunderna e-postmeddelanden som "Hej {customer_name}" bokstavligen, eller ännu värre, e-postmeddelanden med utbytta data.

Validera alltid dina översatta filer mot källan .pot innan du distribuerar. Verktyg som Poedit flaggar platshållarfel och molnbaserade översättare med syntaxlåsning eliminerar den här typen av fel helt.

Saknade pluraliseringsregler

Shopify hanterar pluraler helt enkelt. WordPress Gettext stöder komplexa pluralformer som varierar beroende på språk. Ryska har tre pluralformer. Arabiska har sex. Om din översatta .po-fil inte innehåller rätt Plural-Forms-huvud och matchande msgstr[0], msgstr[1], msgstr[2]-poster återgår WordPress till den oöversatta texten.

# Correct Russian plural forms header
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : "
"n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"

msgid "%s item"
msgid_plural "%s items"
msgstr[0] "%s товар"
msgstr[1] "%s товара"
msgstr[2] "%s товаров"

Detta är något som Shopify aldrig krävde att du skulle tänka på. På WordPress spelar det roll.

Föräldralösa texter efter plugin-byten

När du migrerar från Shopify ändrar du inte bara plattform. Du ersätter ett helt plugin-ekosystem. Din Shopify-betalningsgateway blir WooCommerce Payments eller Stripe för WooCommerce. Ditt granskningssystem blir ett WordPress-plugin. Varje byte introducerar nya översättningsbara texter och gör gamla översättningar föråldrade.

Bygg en checklista över varje plugin du installerar efter migreringen och verifiera att var och en har en motsvarande översatt .mo-fil i /wp-content/languages/plugins/. Att sakna även ett plugin innebär att dina kunder ser engelska texter mitt i ett annars översatt gränssnitt.

Lansera din flerspråkiga butik på WordPress

En flerspråkig WordPress-migrering är inte bara en dataöverföring. Det är en omstrukturering av hur din butik kommunicerar med internationella kunder. De butiker som får detta rätt ser högre konverteringsfrekvens på icke-engelska marknader eftersom upplevelsen känns naturlig snarare än lappad ihop.

Arbetsflödet är enkelt: exportera dina Shopify-översättningar, mappa dem till WordPress locale-koder, konvertera till .po-format, fyll luckorna med batch-AI-översättning, validera dina variabler och distribuera statiska .mo-filer. Inget databasuppsvällning. Ingen runtime-översättningskostnad. Bara snabb, pålitlig, flerspråkig handel.

Om du står inför en migrering med tusentals oöversatta WooCommerce-texter kan SimplePoTranslates tillvägagångssätt för lokalisering av stora filer spara dig veckor av manuellt arbete.

Redo att översätta din WooCommerce-butik efter migreringen? Prova SimplePoTranslate gratis - inget kreditkort krävs. Ladda upp din .pot-fil och få produktionsklara översättningar på några minuter.