Określ domyślny język dokumentu, a następnie użyj atrybutu translate i notranslate
klasy Google dla każdego elementu / kontenera, na przykład:
<html lang="en">
...
<span><a href="#" translate="no" class="notranslate">English</a></span>
Wyjaśnienie:
Zaakceptowana odpowiedź przedstawia ogólne rozwiązanie, ale nie dotyczy sposobu określania języka dla każdego elementu, co może naprawić błąd i zapewnić, że strona będzie nadal przetłumaczalna .
Dlaczego tak jest lepiej? To będzie współpracować z umiędzynarodowieniem Google, a nie wyłączać go. Odnosząc się do PO:
Dlaczego Chrome nieprawidłowo określa, że strona jest w innym języku i proponuje tłumaczenie?
Odpowiedź : Google stara się pomóc w internacjonalizacji, ale musimy zrozumieć, dlaczego to się nie udaje. Opierając się na odpowiedzi NinjaCat , zakładamy, że Google czyta i przewiduje język Twojej witryny za pomocą algorytmu N-gramowego - więc nie możemy dokładnie powiedzieć, dlaczego Google chce przetłumaczyć Twoją stronę; możemy tylko założyć, że:
- Na Twojej stronie znajdują się słowa, które należą do innego języka.
- Oznaczenie elementu zawierającego jako
translate="no"
i lang="en"
(lub usunięcie tych słów) pomoże Google poprawnie przewidzieć język Twojej strony.
Niestety, większość osób, które trafiają do tego posta, nie wie, jakie słowa powodują problem. Użyj wbudowanej w Chrome funkcji „Przetłumacz na angielski” (w menu kontekstowym prawego przycisku myszy), aby zobaczyć, co zostanie przetłumaczone. Możesz zobaczyć nieoczekiwane tłumaczenia, takie jak następujące :
Dlatego aktualizuj swój kod HTML odpowiednimi tagami tłumaczeń, aż Tłumaczenie Google Twojej strony nic nie zmieni - wtedy powinniśmy spodziewać się, że wyskakujące okienko zniknie dla przyszłych odwiedzających.
Czy dodanie tych wszystkich dodatkowych tagów nie wymagałoby dużo pracy? Tak, bardzo prawdopodobne. Jeśli używasz Wordpress lub innego systemu zarządzania treścią, zajrzyj do ich dokumentacji, aby szybko zaktualizować swój kod!