Come impostare la lingua della pagina Web determinata dalla lingua del visitatore

StackOverflow https://stackoverflow.com/questions/1826603

  •  22-07-2019
  •  | 
  •  

Domanda

Qualcuno può dirmi come impostare la lingua di una pagina Web sulla conoscenza dell'indirizzo IP del visitatore in modo che ottenga automaticamente la pagina nella lingua del suo paese. Naturalmente se tale lingua è implementata dallo sviluppatore web. Ancora meglio, scrivo alcuni esempi di traduzione automatica di Google del testo.

Quindi, come ottenere quel visitatore dagli Stati Uniti ottiene testo sulla mia pagina in inglese e visitatore dalla Francia in francese. Tutto ciò tradotto da Google da una terza lingua originale.

Grazie mille.

È stato utile?

Soluzione

In entrambi:

  • Indovina la lingua dalla posizione (che puoi ottenere dal loro IP).

  • Guarda l'intestazione della richiesta " accetta-lingua " valore.

Per vedere cosa c'è nell'intestazione della richiesta, dai un'occhiata qui: http: //www.ericgiguere.com/tools/http-header-viewer.html

Altri suggerimenti

Per quanto riguarda la selezione automatica della lingua, se utilizzassi Apache seguivo il percorso mod_rewrite. È più facile cambiare in un ambiente di produzione toccando il codice dell'applicazione. mod_rewrite prende " Accept-Language " dall'intestazione quindi applica la regola di riscrittura.

RewriteCond% {HTTP: Accept-Language} ^ fr [NC]

RewriteRule ^ $ / fr / [L, R = 301]

È possibile impilare le condizioni e le regole di riscrittura per funzionare come una cattura di tutte le variazioni della lingua (fr, fr-ca, fr-fr, fr-mo, fr-ch tutto va a fr)

Guarda la documentazione ufficiale di riscrittura mod

buon esempio di lingua: http://tech-blog.borychowski.com/index.php/2009/03/htaccess/redirect-according-to-browser-language-mod-rewrite-and-http_accept_language/

Dopo aver spinto l'utente nella giusta lingua generale (quando nessuna è definita nell'URL) l'applicazione può impostare una lingua di sessione, scrivere collegamenti con il set lang. È anche utile consentire alle persone di cambiare la lingua al volo poiché la maggior parte degli utenti in locali bilingui (vale a dire Quebec) lavora in più di una lingua. Ho lavorato con programmatori di lingua francese che preferiscono leggere documenti tecnici in inglese.

Quando si tratta di Google tradurre il testo, starei attento. Se stai effettuando una transazione e-commerce, i tuoi clienti internazionali (o clienti locali con impostazioni del browser internazionale) potrebbero ottenere informazioni, descrizioni e "termini e condizioni" errati o imprecisi sul prodotto. Se non si salva il testo esatto della traduzione di Google nel proprio DB per ogni traduzione al volo, non è possibile tenere traccia di ciò che l'utente si è impegnato nella propria lingua. Alcune copie legali non tradotte potrebbero essere in ordine.

Spero che questo aiuti.

Questa è una cattiva idea dall'offset.

  1. La geolocalizzazione su indirizzo IP non funziona sempre (e non funziona se si utilizza TOR)
  2. Anche se lo avessi fatto bene, cosa avresti fatto per paesi come il Canada o la Svizzera?
  3. La traduzione automatica è ok, ma sarebbe meglio dire a qualcuno che non hai il sito nella loro lingua - potrebbero quindi preferire leggerlo in un'altra lingua.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top