Flere av sidene mine vises i søkeresultatene med [Translate this page] ved siden av. Når jeg klikker at det tar meg til Google Translate og oversetter siden min «fra katalansk til engelsk».

Sidene er på engelsk, men har et par utenlandske ord (faktisk japanske romaniseringer, ikke katalanske) som ser ut til å snuble Google opp.

For noen uker siden satte jeg html-koden til <html lang="en"> som fra forskning ser ut til å være den beste metoden for å spesifisere språket i et dokument. Google har cachet sidene med dette attributtet, men det er fortsatt tilbud om å oversette.

Mer forskning førte meg til et «notranslate» -attributt som forhindrer oversettelse helt: <html lang="en" class="notranslate">. Problemet nå er at brukere ikke kan oversette fra engelsk til ønsket språk!

Er det noen andre løsninger som tvinger Google til å analysere nettstedet mitt som bare engelsk?

Svar

Google gjør nei ikke bruk språklige metadata siden vi «har funnet ut at de generelt sett er feil. Bruk av HTTP-overskrifter, HTML-metatags eller lang-attributter på elementnivå har ingen innvirkning på Googles språkgjenkjenning, så med mindre du vil gjøre det for andre formål (f.eks. Skjermlesere), kan du sannsynligvis hoppe over det.

En ting å huske på er at Google ikke har noe problem med å gjenkjenne flere språk per side. Så selv om vi skulle erkjenne at en del av siden er sagt på italiensk (kanskje når du skriver om italienske hoteller) , og vi viser en «oversett denne siden» -linken i søkeresultatene, vil vi sannsynligvis fremdeles kunne gjenkjenne at den hovedsakelig er på engelsk. En enkel måte å sjekke på er å bruke de avanserte søkealternativene til å velge en spesifikk språk og gjør et nettsted: -spørsmål for nettstedet ditt.

Kommentarer

  • Stor innsikt John, takk. Så du ' sier det ' er det ingen måte å stoppe Google med å vise [Translate this page]? Mine sider vises på engelsk bare avansert søk. Mine hovedkonserter n er brukere – å vise oversettelseskoblingen innebærer at hele siden er på et annet språk. Personlig pleier jeg å unngå disse koblingene når jeg ser dem. Det er også andre nettsteder som bruker de samme ordene som ikke ' t får oversettelseskoblingen …
  • At ' s korrekt – for øyeblikket er det ' ingen måte å gjøre " Oversett denne siden " lenke forsvinner fra webansvarlig ' s side. Jeg ' Gi dine tilbakemeldinger videre til teamet, kanskje det ' er noe de kan vurdere for fremtiden.
  • Takk @John. Hovedproblemet er at Google mener sidene er på katalansk, når de ikke er det. Jeg ' er overrasket over at Google ignorerer språketaggen fullstendig – hvorfor ikke i det minste bruke det som et hint?
  • Er det noen oppdatering om dette slik jeg har sett folk her og der på internett som stiller det samme spørsmålet og i noen tilfeller forårsaker en uendelig løkke – superuser.com/questions/326938/…
  • Anekdotisk, jeg må legge til at jeg personlig har sett dette (i Chrome for Windows) når jeg ' m i PHPMyAdmin der Google mener siden er på italiensk og tilbyr å oversette. Det ' slo meg alltid som bisarr med tanke på at jeg ' aldri har lagt merke til noen ikke-engelske ord i PHPMyAdmin.

Svar

Du bør legge til metataggen

<meta http-equiv="content-language" content="en" /> 

Du kan også sende Content-Language HTTP header fra serveren hvis du har tilgang til den.

Mer info på http://www.w3.org/International/questions/qa-http-and-lang

Kommentarer

  • Eller angi toppteksten ved hjelp av Apache: Topptekst angi innholdsspråk " no "
  • @John, yep. ( det er det jeg mente at han kan sende http-overskriften fra serveren )
  • Hmm, vel antatt å bruke <html lang="en"> er bedre enn den metakoden, men jeg vil prøve og se hva som skjer 🙂
  • Jeg ' har hatt det samme problemet og jeg ' har bekreftet at dette fungerer for meg i Chrome 19 dev
  • <html lang=en> løste det ikke for meg, men ' content-language ' metatag gjorde.

Svar

bruk denne metaen til å hoppe over Googles oversettelse

<meta name="google" content="notranslate" /> 

Kommentarer

  • Dette ble faktisk sendt inn som et svar tidligere, og deretter slettet av eieren uten forklaring.@danlefree er det en grunn til at dette ikke er ' t gyldig? Den vises fortsatt på en nylig oppdatert hjelpeside for nettredaktører.
  • @Su ' : ifølge google webmaster skal google translate hoppes over. og det fungerer for nettstedet mitt.
  • @krish ' t som gjør det jeg nevner i spørsmålet og hindrer all oversettelse av brukere?
  • Dette kan være totalitært. Hvis brukerens ' språk er annerledes enn innholdsspråklig metakode, vil du sannsynligvis ha en språkoversettelse.
  • Hvis du høyreklikker på websiden i krom, det gir deg fortsatt muligheten til å oversette selv om du har den metataggen …

Svar

Du kan kanskje se på forespørselen Accept-Language header for dynamisk å legge til / fjerne class="notranslate" -attributtet når språkstrengen inkluderer en.

I følge Web Master World kan du søke class="notranslate" til bare innholdet det påvirker (dvs. «par utenlandske ord») og forhåpentligvis unngå engelsk / engelsk oversettelsesfelt.

Kommentarer

  • Men hvis de ønsket å oversette fra engelsk til et annet språk, ville det bli hentet av Google, ikke nettleseren, og antagelig ville Google bruke " Engl ish " i overskriftsspråket.
  • Google bruker vanligvis engelsk for google.com, google.co.uk, osv. men hva med søkeroboten for google.de, etc? Men uansett, selektiv bruk av klassen virker den beste måten å komme ut av dette.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *