html - una - tradurre pagine web in automatico



Perché Chrome determina in modo errato la pagina in una lingua diversa e offre la traduzione? (4)

Chromium pensa questa pagina in filippino: http://www.reyalvarado.com/portfolio/cuba/ Note: non c'è praticamente nessun testo sulla pagina tranne il nome del proprietario e le voci del menu. Le voci del menu vengono sostituite dinamicamente con le immagini di FLIR.

L'HTML dichiara la pagina come inglese americano:

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US"> 

https://code.i-harness.com

La nuova funzione di traduzione automatica di Google Chrome sta scattando su una pagina all'interno di una delle nostre applicazioni. Ogni volta che navighiamo verso questa particolare pagina, Chrome ci informa che la pagina è in danese e offre traduzioni. La pagina è in inglese, proprio come ogni altra pagina nella nostra app. Questa pagina particolare è una pagina di test interna con alcune dozzine di campi modulo con etichette inglesi. Non ho idea del perché Chrome pensi che questa pagina sia danese.

Qualcuno ha informazioni su come funziona questa funzione di rilevamento della lingua e come posso determinare che cosa sta causando Chrome a pensare che la pagina sia in danese?


Ho aggiunto lang="en" alla dichiarazione doctype, aggiunto meta tag per charset utf-8 e Content-Langauge nell'intestazione HTML, charset specificato come utf-8 e Content-Language come en nelle intestazioni di risposta HTTP e non ha fatto nulla per impedire a Chrome di dichiarare che la mia pagina era in portoghese. L'unica cosa che risolveva il problema era aggiungerla all'intestazione HTML:

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

Ma ora ho impedito agli utenti di tradurre la mia pagina chiaramente in inglese nella loro lingua. Scarso lavoro, Chrome. Puoi essere migliore di questo.



Utilizza il seguente:

<meta charset="UTF-8">
<meta name="google" content="notranslate">
<meta http-equiv="Content-Language" content="en">

Se ciò non funziona, puoi sempre mettere un po 'di testo (la tua pagina "Informazioni" ad esempio) in un div nascosto. Ciò potrebbe aiutare anche con il SEO.

MODIFICA (e maggiori informazioni)

L'OP chiede informazioni su Chrome, quindi la raccomandazione di Google è pubblicata sopra. In genere ci sono tre modi per farlo per altri browser:

  1. Raccomandazione W3C : usa gli attributi lang e / o xml:lang nel tag html:

    <html lang="en" xml:lang="en" xmlns= "http://www.w3.org/1999/xhtml">
    
  2. Raccomandazione di Google : meta http-equiv (come descritto sopra):

    <meta http-equiv="Content-Language" content="en">
    
  3. Utilizza intestazioni HTTP (non consigliato in base ai test di riconoscimento cross-browser ):

    HTTP/1.1 200 OK
    Date: Wed, 05 Nov 2003 10:46:04 GMT
    Content-Type: text/html; charset=iso-8859-1
    Content-Language: en