Tekst til tale for WPML-nettsteder: Hva som faktisk fungerer
Har du et WPML-nettsted og vil at hver oversettelse skal ha sin egen opplesing med riktig stemme, må pluginen du velger gjøre tre ting riktig: lese det oversatte innlegget, generere en separat lydfil per språk og oppdage gjeldende språk inne i AJAX-kall. De fleste tekst til tale-plugins feiler på ett av disse punktene. Tekst til Tale - TTSWP er bygget for å håndtere alle tre.
Dette innlegget er den praktiske motparten til vår Weglot-guide. Den tekniske vinkelen er den motsatte, så vi begynner med å forklare hvorfor.
WPML lagrer oversettelser som ekte innlegg. Weglot gjør ikke det.
WPML og Weglot løser flerspråklig WordPress på svært ulike måter, og den forskjellen avgjør hva en tekst til tale-plugin må gjøre.
WPML oppretter en separat innleggspost for hver oversettelse. Den engelske versjonen av en artikkel ligger i wp_posts med én ID. Den spanske versjonen ligger i samme tabell med en annen ID. WPML kobler dem sammen via icl_translations-tabellen. Den oversatte teksten er ekte tekst i databasen, redigert av et menneske eller via WPMLs maskinoversettelses-pipeline.
Weglot er det motsatte. Databasen inneholder bare originalen. Oversettelser produseres ved kjøretid og injiseres i HTML-outputen før siden når nettleseren. En plugin som leser fra get_post() på et Weglot-nettsted ser alltid bare kildespråket.
For tekst til tale endrer dette alt. På WPML er det riktig å lese innholdet fra databasen. Den oversatte teksten ligger allerede der. Feilmodusene handler om hvilket innlegg pluginen leser, hvilket språk den tror den er i, og om den lagrer én lydfil eller mange.

De fire feilmodusene WPML tekst til tale-plugins treffer
Vi testet flere oppsett på et flerspråklig WPML-testmiljø. De samme fire problemene dukket opp hver gang. Har din nåværende plugin noen av disse, er ikke lyden besøkende hører den du trodde du publiserte.
1. Lydfil på feil språk på grunn av AJAX-språkdeteksjon
Dette er den stille feilen. De fleste tekst til tale-spillere henter lydfilen eller strøm-URL-en via en admin-ajax- eller REST-forespørsel etter at siden lastes inn. Inne i den forespørselen har WordPress mistet front-end-URL-konteksten. Pluginen spør WPML «hvilket språk er vi på?» og får feil svar.
Den vanlige årsaken er den gamle ICL_LANGUAGE_CODE-konstanten. Den defineres én gang tidlig i forespørselen og gjenspeiler språket WPML oppdaget ved oppstart. Under et AJAX-kall trigget fra en spansk side returnerer konstanten ofte standardspråket, ikke spansk. Tekst til tale-pluginen genererer da engelsk lyd til en spansk artikkel, eller henter en bufret engelsk fil og spiller den under den spanske lyttespilleren.
Den riktige tilnærmingen er å bruke WPMLs kjøretidsfiltre. wpml_current_language-filteret returnerer det aktive språket i det øyeblikket du spør. wpml_post_language_details-kroken returnerer språket et bestemt innlegg tilhører, noe som er enda sikrere fordi det knytter lyden til innleggs-ID-en fremfor forespørselstilstanden.
Slik oppdager du det som leser: åpne en oversatt artikkel, trykk play og lytt til det første sekundet. Hører du en engelsk stemme på en ikke-engelsk side, bruker pluginen din feil språkdeteksjonsvei.
2. Én lydfil delt mellom alle oversettelser
Noen plugins genererer lyd når det opprinnelige innlegget publiseres og knytter samme fil til alle oversettelser. Det er raskt og billig. Det er også feil. En spansk leser får engelsk opplesing, eller en syntetisk aksent som ikke stemmer med siden de leser.
Fordi WPML-oversettelser er separate innlegg med separate ID-er, er riktig oppførsel å generere en ny lydfil per oversatt innlegg. Hver fil lagres mot sin egen innleggs-ID og serveres kun til den oversettelsen. TTSWP følger denne modellen og bruker innleggs-ID-en, ikke original-ID-en, som cache-nøkkel.
3. Samme stemme leser alle språk
En fransk artikkel lest av en engelskopplært stemme høres feil ut selv om ordene er korrekte. ElevenLabs-stemmer bærer aksent og prosodi fra treningsdataene sine. En stemme trent på amerikansk engelsk vil lese fransk med amerikansk aksent med mindre du tilordner en stemme som passer målspråket.
TTSWP lar deg knytte én ElevenLabs-stemme til hvert WPML-språk. Den spanske oversettelsen får en spanskopplært stemme, den tyske oversettelsen får en tysk stemme, og så videre. Se dokumentasjonen for språk-til-stemme-tilordning for nøyaktig oppsett.
4. Schema som ikke oppgir lydfilens språk
Dette er AEO-detaljen de fleste plugins overser. AudioObject-strukturdata bør ha en inLanguage-egenskap. Verdien bør være en IETF BCP 47-kode (es, de, nb-NO) som matcher sidens hreflang.
En matchende inLanguage-verdi gir søkemotorer og AI-verktøy et tydelig, maskinlesbart signal om hvilket språk lyden er på. Det forsterker hreflang-signalet som allerede er på siden. Mangler schemaet, eller deler alle oversettelser samme engelske verdi, forsvinner det signalet og språkbevisste systemer kan ikke skille versjonene fra hverandre. Vi dekker hvordan AI-motorer behandler lyd i vår AEO og lyd-guide.
Velge riktig ElevenLabs-modell for WPML-dekning
ElevenLabs leverer flere modeller, og de dekker ikke de samme språkene. Betjener WPML et språk ElevenLabs ikke støtter i modellen du velger, kan du ikke gi god opplesing for den oversettelsen.
Gjeldende dekning per 2026:
- Multilingual v2 støtter 29 språk, inkludert engelsk, spansk, fransk, tysk, italiensk, portugisisk, nederlandsk, polsk, svensk, dansk, finsk, tyrkisk, arabisk, hindi, japansk, koreansk og kinesisk.
- Flash v2.5 støtter 32 språk, alle v2-språkene pluss ungarsk, norsk og vietnamesisk, med omtrent 75 ms modell-latens.
- Eleven v3 støtter 74 språk, den bredeste dekningen av alle modeller. Den har én begrensning som veier tyngre enn ekstradelene: den er ikke bygget for sanntidsbruk. ElevenLabs sier dette direkte. Modellen er større og bruker en høyere-fidelity stemmekodek, så generering tar lengre tid. For sanntids- eller konversasjonsbruk anbefaler ElevenLabs Flash v2.5 i stedet.
For et WPML-nettsted med norsk oversettelse vil Multilingual v2 ikke dekke det. Flash v2.5 vil. For et nettsted som trenger et språk bare v3 støtter, aksepterer du høyere genereringslatens i bytte mot dekning. TTSWP ruter hvert språk til en stemme du velger, så du kan blande modeller etter behov.
Slik tester du om din tekst til tale-plugin faktisk håndterer WPML
Du trenger ikke lese kode for å sjekke dette. Fem minutter i nettleseren viser deg hva som skjer.
- Bytt språk. Åpne originalartikkelen, bytt deretter til en oversettelse via WPML-språkvelgeren. Bekreft at URL-en endres (for eksempel til
/es/) og at innleggets slug er den oversatte slugen. - Trykk play og lytt. Stemmen bør matche sidens språk. En engelsk stemme på en spansk side betyr at pluginen feilet på punkt én.
- Inspiser lyd-URL-en. Høyreklikk spilleren og kopier lydkilden. Sammenlign den med lyd-URL-en på originalartikkelen. Er begge URL-ene identiske på tvers av språk, deler pluginen én fil.
- Se på sidens kilde og søk etter
AudioObject. Se etter etinLanguage-felt. Det bør være lik sidens språkkode. Mangler feltet eller er det alltiden, er schemaet feil. - Sjekk hreflang.
inLanguagepå lyden bør matchehreflangpå siden. Misforhold forvirrer AI-søk og bryter per-språk-sitering.
Kjør denne sjekklisten før du kjøper noe som helst. Den fungerer på alle tekst til tale-plugins, ikke bare TTSWP.
Slik ser et korrekt WPML tekst til tale-oppsett ut
Her er hva vi anbefaler på et produksjons-WPML-nettsted. Hvert punkt svarer til en feilmodus ovenfor.
| Problemområde | Feil tilnærming | Riktig tilnærming |
|---|---|---|
| Språk i AJAX | ICL_LANGUAGE_CODE-konstanten | wpml_current_language-filter eller wpml_post_language_details knyttet til innleggs-ID-en |
| Lydlagring | Én fil delt mellom alle oversettelser | Én fil per oversatt innleggs-ID, servert fra CDN |
| Stemmevalg | Samme stemme for alle språk | Én ElevenLabs-stemme tilordnet per WPML-språk |
| Modellvalg | Hardkodet modell for alle språk | Per-språk-valg mellom Multilingual v2, Flash v2.5 eller Eleven v3 |
| Schema | Manglende eller engelskspråklig AudioObject | AudioObject med inLanguage som matcher sidens hreflang |
TTSWP følger høyre kolonne som standard. Pluginen leser det oversatte innlegget direkte, genererer en ny lydfil per innleggs-ID, leverer den via CloudFront og sender ut per-språk AudioObject-schema. WPML-integrasjonsdokumentasjonen guider deg gjennom oppsettet.
Én reell begrensning
Lyd per språk koster flere tegn enn én delt fil. Publiserer du en artikkel på 1500 ord og oversetter den til fem språk, betaler du for fem genereringer, ikke én. Det er prisen for korrekthet. Å dele én fil ville vært billigere, men lyden ville ikke matchet siden. Vi anbefaler ikke å ofre leseropplevelsen for å spare kreditter, og vi sier det rett ut i kreditt-dokumentasjonen.
Er budsjettet stramt, generer lyd bare for språkene som faktisk får trafikk. WPMLs språkstatistikk og analyseverktøyet ditt forteller deg hvilke oversettelser som er verdt å ta opp.
Ofte stilte spørsmål
Støtter TTSWP WPML uten ekstra konfigurasjon?
Ja. Når begge plugins er aktive, oppdager TTSWP WPML, leser det oversatte innholdet for hvert språk og lagrer en separat lydfil per oversettelse. Du tilordner én stemme per språk i TTSWP-innstillingene, og publiserer deretter oversettelser som normalt. Lyden regenereres når en oversettelse oppdateres. Se WPML-integrasjonssiden for oppsettsteg.
Hvorfor leser min nåværende tekst til tale-plugin alt på engelsk på oversatte sider?
Den mest sannsynlige årsaken er den utdaterte ICL_LANGUAGE_CODE-konstanten inne i et AJAX-kall. Under AJAX returnerer konstanten ofte nettstedets standardspråk i stedet for det aktive, slik at pluginen genererer eller serverer engelsk lyd på ikke-engelske sider. Løsningen er å bytte til wpml_current_language-filteret eller lese språket fra innleggs-ID-en direkte.
Kan jeg bruke forskjellige ElevenLabs-stemmer per WPML-språk?
Ja. TTSWP knytter én ElevenLabs-stemme til hvert WPML-språk. Spanske oversettelser leses av en spansk stemme, tyske av en tysk stemme, og så videre. Du kan også velge ulike modeller per språk, noe som er viktig når et målspråk bare støttes av Flash v2.5 eller Eleven v3 og ikke Multilingual v2.
Hvilke språk dekker ElevenLabs for WPML-nettsteder?
Multilingual v2 dekker 29 språk, Flash v2.5 dekker 32 (med norsk, ungarsk og vietnamesisk i tillegg), og Eleven v3 dekker 74 språk. Velg modellen med bredest dekning innenfor latensbegrensningene dine. De fleste WPML-nettsteder klarer seg godt med Multilingual v2 eller Flash v2.5. Nettsteder med sjeldnere språk flytter de oversettelsene til Eleven v3.
Sender TTSWP ut per-språk-schema for AI-søk?
Ja. TTSWP genererer et AudioObject per oversatt innlegg med en inLanguage-verdi som matcher sidens hreflang. Dette gir søkemotorer og AI-verktøy et tydelig signal om hvilken lyd som tilhører hvilken språkversjon av artikkelen, i stedet for at alle oversettelser er merket likt.
Neste steg
Kjør den femdelte nettlesertesten på tekst til tale-pluginen du bruker i dag. Feiler noe steg, er det den feilmodusen du må fikse før du legger til flere oversettelser. Vil du ha et oppsett som håndterer alle fem uten ekstra arbeid, installer Tekst til Tale - TTSWP fra WordPress.org, koble det til TTSWP-backenden og tilordne én stemme per WPML-språk. Pluginen tar seg av resten.
Relaterte artikler
Beste tekst til tale-plugins for WordPress (2026)
Vi sammenligner de syv beste tekst-til-tale-pluginene for WordPress i 2026. Du får styrker, svakheter og en tabell som setter funksjonene opp mot hverandre.
Tekst til Tale for Weglot WordPress-sider: Hva som faktisk fungerer
De fleste TTS-programtillegg hevder at de støtter Weglot, men leser fra databasen, ikke fra oversettelsen. Her er hva ekte Weglot-kompatibilitet krever.
Hva er tekst til tale? En enkel innføring
Tekst til tale gjør skrevet innhold om til lyd. Lær hvordan det fungerer, hvorfor det er nyttig, og hvordan du legger det til på WordPress-siden din.