¿Cómo puedo evitar que Google ofrezca por error traducir una página?

37

Varias de las páginas de mi sitio aparecen en los resultados de búsqueda [Translate this page]junto a él. Cuando hago clic en eso, me lleva al Traductor de Google y traduce mi página "del catalán al inglés".

Las páginas están en inglés pero tienen un par de palabras extranjeras (en realidad, romanizaciones japonesas, no catalanas) que parecen estar tropezando con Google.

Hace unas semanas establecí la etiqueta html en la <html lang="en">que, según la investigación, parece ser el mejor método para especificar el idioma de un documento. Google ha almacenado en caché las páginas con este atributo, pero todavía ofrece traducir.

Más investigación me llevó a un atributo "notranslate", que impide la traducción del todo: <html lang="en" class="notranslate">. ¡El problema ahora es que los usuarios no pueden traducir del inglés al idioma deseado!

¿Hay alguna otra solución que obligue a Google a analizar mi sitio solo en inglés?

Cabra descontento
fuente

Respuestas:

19

Google no utiliza metadatos de idioma, ya que hemos descubierto que, en general, es incorrecto. El uso de encabezados HTTP, metaetiquetas HTML o atributos lang de nivel de elemento no tiene un impacto en el reconocimiento de idioma de Google, por lo que, a menos que desee hacerlo para otros fines (por ejemplo, lectores de pantalla), probablemente pueda omitirlo.

Una cosa a tener en cuenta es que Google no tiene problemas para reconocer varios idiomas por página. Entonces, aunque reconozcamos que una parte de la página se dice en italiano (tal vez cuando escribes sobre hoteles italianos), y mostramos un enlace "traducir esta página" en los resultados de búsqueda, probablemente aún podamos reconocer que es principalmente en ingles. Una manera simple de verificar eso es usar las opciones de búsqueda avanzada para seleccionar un idioma específico y hacer un sitio: -consulte para su sitio.

John Mueller
fuente
1
Gran idea John, gracias. ¿Entonces estás diciendo que no hay forma de dejar de mostrar Google [Translate this page]? Mis páginas aparecen en la búsqueda avanzada solo en inglés. Mi principal preocupación son los usuarios: mostrar el enlace de traducción implica que toda la página está en un idioma diferente. Personalmente, tiendo a evitar esos enlaces cuando los veo. También hay otros sitios que utilizan las mismas palabras que no reciben el enlace de la traducción ...
DisgruntledGoat
2
Eso es correcto: en este momento no hay forma de hacer que el enlace "Traducir esta página" desaparezca del lado del webmaster. Sin embargo, transmitiré sus comentarios al equipo, tal vez sea algo que puedan considerar para el futuro.
John Mueller
2
Gracias @ John. El principal problema es que Google cree que las páginas están en catalán, cuando no lo están. Me sorprende que Google ignore por completo la etiqueta de idioma, ¿por qué no al menos usarla como una pista?
DisgruntledGoat
1
¿Hay alguna actualización sobre esto, ya que he visto a la gente aquí y allá en el Internet la misma pregunta y en algunos casos causando un bucle sin fin - superuser.com/questions/326938/...
Las cooperativas
44
Como anécdota, debo agregar que personalmente he visto esto (en Chrome para Windows) cuando estoy en PHPMyAdmin, donde Google cree que la página está en italiano y ofrece traducir. Siempre me ha parecido extraño teniendo en cuenta que nunca he notado palabras que no estén en inglés en PHPMyAdmin.
huzzah
13

usa este meta para saltear el traductor de Google

<meta name="google" content="notranslate" />
Krish
fuente
2
En realidad, esto se envió como respuesta anteriormente, luego el propietario lo eliminó sin explicación. @danlefree ¿hay alguna razón por la que esto no sea válido? Es todavía aparece en una página actualizada recientemente-Herramientas para webmasters ayuda.
Su
@Su ': según el webmaster de Google, se debe omitir el traductor de Google. y funciona para mi sitio.
Krish
@krish, ¿no hace eso lo que menciono en la pregunta e impide toda traducción por parte de los usuarios?
DisgruntledGoat
Esto podría ser totalitario. Si el idioma del usuario es diferente a la metaetiqueta de idioma de contenido, probablemente desee una traducción de idioma.
chovy
Si hace clic derecho en la página web en Chrome, aún le da la opción de traducir incluso si tiene esa metaetiqueta ...
NewBie1234
12

Deberías agregar la metaetiqueta

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

También puede enviar el encabezado HTTP Content-Language desde el servidor si tiene acceso a él.

Más información en http://www.w3.org/International/questions/qa-http-and-lang

Gabriele Petrioli
fuente
2
O establezca el encabezado con Apache: Encabezado conjunto de idioma de contenido "en"
John Conde
@John, sí. ( eso es lo que quise decir que puede enviar el encabezado http desde el servidor )
Gabriele Petrioli
Hmm, bueno usar supuestamente <html lang="en">es mejor que la etiqueta meta, pero voy a darle una oportunidad y ver lo que sucede :)
DisgruntledGoat
He tenido el mismo problema y he verificado que esto funciona para mí en Chrome 19 dev
Olly
<html lang=en>no me lo solucionó, pero la metaetiqueta 'content-language' sí.
Chovy
4

Es posible que pueda mirar el Accept-Languageencabezado de la solicitud para agregar / eliminar dinámicamente el class="notranslate"atributo cuando se incluye la cadena de idioma en.

Según Web Master World , puede aplicar class="notranslate"solo al contenido que afecta (es decir, el "par de palabras extranjeras") y, con suerte, evitar el cuadro de traducción inglés / inglés.

Metalshark
fuente
Pero si quisieran traducir del inglés a otro idioma, Google lo buscaría, no el navegador, y presumiblemente Google usaría "inglés" en el encabezado del idioma de aceptación.
Lèse majesté el
Google generalmente usa inglés para google.com, google.co.uk, etc. Sin embargo, ¿qué pasa con el rastreador para google.de, etc.? Pero independientemente, el uso selectivo de la clase parece la mejor manera de salir de esto.
Metalshark el