Mai multe pagini ale site-ului meu apar în rezultatele căutării cu [Translate this page] lângă el. Când fac clic că mă duce la Google Translate și îmi traduce pagina „din catalană în engleză”.

Paginile sunt în engleză, dar au câteva cuvinte străine (de fapt romanizări japoneze, nu catalane) care par să se împiedice Google up.

Acum câteva săptămâni am setat eticheta html la <html lang="en"> care din cercetare pare a fi cea mai bună metodă pentru a specifica limba unui document. Google a păstrat în cache paginile cu acest atribut, dar oferă în continuare traducerea.

Mai multe cercetări m-au condus la un atribut „notranslate” care împiedică traducerea în întregime: <html lang="en" class="notranslate">. Problema acum este că utilizatorii nu pot traduce din engleză în limba dorită!

Există alte soluții care să forțeze Google să analizeze site-ul meu doar ca engleză?

Răspunde

Google nu Nu folosiți metadatele lingvistice, deoarece am constatat că sunt în general incorecte. Folosind anteturi HTTP, metaetichete HTML sau atribute lang la nivel de element nu are impact asupra recunoașterii limbii Google, așadar, dacă nu doriți să faceți acest lucru în alte scopuri (de exemplu, cititori de ecran), puteți sări peste asta.

Un lucru de reținut este faptul că Google nu are nicio problemă în recunoașterea mai multor limbi pe pagină. Deci, chiar dacă ar trebui să recunoaștem că o parte a paginii se spune în italiană (poate când scrieți despre hoteluri italiene) , și afișăm un link „traduceți această pagină” în rezultatele căutării, probabil că vom putea recunoaște că este în mare parte în limba engleză. O modalitate simplă de a verifica faptul că este să utilizați opțiunile de căutare avansată pentru a selecta un anumit limbă și faceți un site: -interogare pentru site-ul dvs.

Comentarii

  • Excelentă perspectivă John, mulțumesc. Deci, tu ' spuneți că ' nu există nicio modalitate de a opri afișarea de către Google a [Translate this page]? Paginile mele apar doar în limba engleză avansată căutare. Concertul meu principal n este utilizator – afișarea linkului de traducere înseamnă că întreaga pagină este într-o altă limbă. Personal, tind să evit aceste legături atunci când le văd. Există, de asemenea, alte site-uri care utilizează aceleași cuvinte care nu ' nu primesc linkul de traducere …
  • Că ' s corect – în acest moment ' nu există nicio modalitate de a face ca " să traducă această pagină " link-ul dispare din partea webmasterului '. Totuși, ' voi transmite feedback-ul dvs. echipei, poate că ' este ceva ce pot lua în considerare pentru viitor.
  • Mulțumesc @John. Principala problemă este că Google crede că paginile sunt în catalană, atunci când nu sunt. ' m-am mirat că Google ignoră complet eticheta de limbă – de ce nu măcar să o folosesc ca indiciu?
  • Există vreo actualizare în acest sens, așa cum am văzut oameni ici și colo pe internet care pun aceeași întrebare și, în unele cazuri, cauzează o buclă fără sfârșit – superuser.com/questions/326938/…
  • Anecdotic, trebuie să adaug că am văzut acest lucru personal (în Chrome pentru Windows) când ' m în PHPMyAdmin unde Google crede că pagina este în italiană și se oferă să traducă. ' mi s-a părut întotdeauna bizar, având în vedere că ' nu am observat niciodată cuvinte non-engleze în PHPMyAdmin.

Răspuns

Ar trebui să adăugați metaeticheta

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

De asemenea, puteți trimite antetul HTTP Content-Language de pe server dacă aveți acces la acesta.

Mai multe informații la http://www.w3.org/International/questions/qa-http-and-lang

Comentarii

  • Sau setați antetul folosind Apache: antetul setează conținutul-limbă " en "
  • @John, da. ( asta am vrut să spun că poate trimite antetul http de pe server )
  • Hmm, bine se presupune că folosind <html lang="en"> este mai bine decât metaeticheta respectivă, dar o să încerc și să văd ce se întâmplă 🙂
  • Am ' am avut aceeași problemă și ' Am verificat că funcționează pentru mine în Chrome 19 dev
  • <html lang=en> nu a remediat-o, dar ' content-language ' meta tag a făcut-o.

Răspuns

utilizați această meta pentru a sări peste traducerea Google

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

Comentarii

  • Acesta a fost de fapt trimis ca răspuns anterior, apoi șters de către proprietar fără explicații.@danlefree există un motiv pentru care acest lucru nu este ' valabil? apare încă pe o pagină de ajutor Instrumente pentru webmasteri recent actualizată.
  • @Su ' : conform webmasterului google, traducerea google ar trebui să fie omisă. și funcționează pentru site-ul meu.
  • @krish nu ' nu face ceea ce menționez în întrebare și împiedică toate traducerile de către utilizatori?
  • Acest lucru ar putea fi totalitar. Dacă limba utilizatorului ' este diferită de metaeticheta de limbă conținut, probabil că ați dori o traducere a limbii.
  • Dacă faceți clic dreapta pe pagina web din crom, vă oferă totuși opțiunea de a traduce chiar dacă aveți metaeticheta respectivă …

Răspundeți

Este posibil să puteți examina cererea Accept-Language pentru a adăuga / elimina dinamic atributul class="notranslate" atunci când șirul de limbă include en.

Conform Web Master World puteți aplica class="notranslate" numai pentru conținutul pe care îl afectează (adică „cuplul de cuvinte străine”) și, sperăm, să evitați caseta de traducere în engleză / engleză.

Comentarii

  • Dar dacă ar dori să traducă din engleză într-o altă limbă, atunci ar fi preluat de Google, nu de browser, și probabil Google ar folosi " ish " în antetul de acceptare a limbii.
  • De obicei, Google folosește engleza pentru google.com, google.co.uk, etc., dar despre crawler pentru google.de, etc? Dar, indiferent, utilizarea selectivă a clasei pare cea mai bună cale de a ieși din acest lucru.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *