Flere af siderne på mit websted vises i søgeresultater med [Translate this page]
ved siden af. Når jeg klikker at det tager mig til Google Translate og oversætter min side “fra catalansk til engelsk”.
Siderne er på engelsk, men har et par fremmede ord (faktisk japanske romaniseringer, ikke catalansk), der ser ud til at falde Google op.
For et par uger siden satte jeg html-tagget til <html lang="en">
som fra forskning synes at være den bedste metode til at specificere sproget i et dokument. Google har cachelagret siderne med denne attribut, men den tilbyder stadig at oversætte.
Mere forskning førte mig til en “notranslate” -attribut, der forhindrer oversættelse fuldstændigt: <html lang="en" class="notranslate">
. Problemet er nu, at brugere ikke kan oversætte fra engelsk til deres ønskede sprog!
Er der andre løsninger, der tvinger Google til at parse mit websted som kun engelsk?
Svar
Google gør nej Brug ikke sproglige metadata, da vi “har fundet ud af, at de generelt ikke er korrekte. Brug af HTTP-overskrifter, HTML-metatags eller lang-attributter på elementniveau har ingen indflydelse på Googles sproggenkendelse, så medmindre du vil gøre det til andre formål (f.eks. Skærmlæsere), kan du sandsynligvis springe over det.
En ting at huske på er, at Google ikke har noget problem med at genkende flere sprog pr. side. Så selvom vi skulle erkende, at en del af siden er at sige på italiensk (måske når du skriver om italienske hoteller) , og vi viser et link til “oversæt denne side” i søgeresultaterne, vil vi sandsynligvis stadig være i stand til at genkende, at det for det meste er på engelsk. En enkel måde at kontrollere det er at bruge de avancerede søgemuligheder til at vælge en bestemt sprog og lav et site: -forespørgsel til dit websted.
Kommentarer
Svar
Du skal tilføje metatagget
<meta http-equiv="content-language" content="en" />
Du kan også sende Content-Language HTTP header fra serveren, hvis du har adgang til den.
Flere oplysninger på http://www.w3.org/International/questions/qa-http-and-lang
Kommentarer
- Eller indstil headeren ved hjælp af Apache: Header sæt indholdssprog " da "
- @John, yep. ( det var det, jeg mente, at han kan sende http-headeren fra serveren )
- Hmm, vel antaget at bruge
<html lang="en">
er bedre end det metatag, men jeg vil prøve det og se, hvad der sker 🙂 - Jeg ' har haft det samme problem, og jeg ' har bekræftet, at dette fungerer for mig i Chrome 19 dev
-
<html lang=en>
fikset det ikke for mig, men ' indholdssprog ' metatag gjorde.
Svar
brug denne meta til at springe Googles oversættelse over
<meta name="google" content="notranslate" />
Kommentarer
- Dette blev faktisk sendt som et svar tidligere og derefter slettet af ejeren uden forklaring.@danlefree er der en grund til, at dette ikke er ' t gyldigt? Det vises stadig på en nyligt opdateret hjælpeside til Webmasterværktøjer.
- @Su ' : ifølge google webmaster skal google translate springes over. og det fungerer for mit websted.
- @krish ' t der gør det, jeg nævner i spørgsmålet, og forhindrer al oversættelse af brugere?
- Dette kan være totalitært. Hvis brugerens ' sprog er anderledes end indholdssproget metatag, vil du sandsynligvis have en sprogoversættelse.
- Hvis du højreklikker på websiden i krom, det giver dig stadig mulighed for at oversætte, selvom du har det metatag …
Svar
Du kan muligvis se på anmodningen Accept-Language
header for dynamisk at tilføje / fjerne attributten class="notranslate"
, når sprogstrengen inkluderer en
.
I henhold til Web Master World kan du anvende class="notranslate"
kun til det indhold, det påvirker (dvs. “par fremmede ord”) og forhåbentlig undgå engelsk / engelsk oversættelsesfelt.
Kommentarer
- Men hvis de ville oversætte fra engelsk til et andet sprog, ville det blive hentet af Google, ikke browseren, og sandsynligvis ville Google bruge " Engl ish " i accept-sprog-overskriften.
- Google bruger normalt engelsk til google.com, google.co.uk osv. Hvad med crawleren til google.de osv.? Men uanset synes selektiv brug af klassen den bedste vej ud af dette.
[Translate this page]
? Mine sider vises på engelsk kun avanceret søg. Mine hovedkoncerter n er brugere – visning af oversættelseslinket betyder, at hele siden er på et andet sprog. Personligt har jeg en tendens til at undgå disse links, når jeg ser dem. Der er også andre sider, der bruger de samme ord, som ikke ' ikke får oversættelseslinket …