Як вимкнути Google Translate з HTML в Chrome


99

Я щойно створив веб-сайт для французького ресторану. Веб-сайт англійською мовою, але, мабуть, на веб-сайті є достатньо французької мови (позначені зображеннями пунктів меню), щоб спонукати відвідувача перекласти веб-сайт, якщо він використовує Chrome.

Чи можу я щось додати до html, щоб Chrome не запитував перекласти сторінку? Я припускаю, що це буде щось на зразок, <html lang="en">але це не працює.

Будь-які ідеї?

Дякую



1
Ви повинні запитати себе, чому? Роблячи це, ви забороняєте кожному читати сайт, якщо ви не надали переклад на їхню мову. Google Translate не ідеальний, але робить речі доступними.
Тоні Лі

1
@Toni Leigh, виступаючи за себе, я бачив, як Google Translate переймається поведінкою Javascript та DOM, що призводить до різних важких помилок виконання.
Ерік Грейндж

1
@ToniLeigh, оскільки він виявляє неправильну мову джерела. Він хоче надати правильну мову джерела. - Якби це lang="en"працювало, це не просто "вимкнуло б" переклад Google для нього, але це виправило б для тих, хто не володіє англійською мовою, кому це може знадобитися.
BrainSlugs83,

Я навіть переклав вміст у базі даних mongo із маніпульованої випадаючої форми, повністю переплутавши свої дані.
Курт Ван ден Бранден

Відповіді:


228

Нова відповідь

Додайте translate="no"до свого <html>тегу приблизно так:

<html translate="no">

Довідка MDN


Стара відповідь

(Це все одно має працювати, але менш бажано, оскільки це стосується Google, і там є інші послуги перекладу.)

Додайте цей тег між <head>і </head>:

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

Довідкова документація


18
Ви також можете виключити певні елементи з перекладу: class = "notranslate"
Ансельм

8
valueАтрибут повинен бути змінений content="notranslate"для того , щоб пройти перевірку HTML5.
Leo Galleguillos

Оновлена ​​URL-адреса документації: support.google.com/webmasters/answer/79812
Ахі тунець

Чудова порада для приховування панелі перекладу Google
Piece of Code

4
Додавання цього метатегу працювало у нас. На більшості наших сторінок ми вже мали <html lang = "en">, які раніше, здавалося, працювали, але вже не працювали.
Кріс

14

Тож для остаточного рішення я зробив;

<html lang="en" class="notranslate" translate="no">
<head><meta name="google" content="notranslate" /> </head>

Це спрацювало для мене.


Мені просто довелося додати перший рядок '<html lang = "en" class = "notranslate" translate = "no">'
Тобо,

Працював як оберіг .. Спаситель!
Onur Şahindur

6

Мета-тег у <head>не працював для мене, але

class="notranslate"

доданий до батьків div(або навіть <body>) працював і дозволяє більш точно контролювати вміст, який ви не хочете перекладати.


0

Давайте додамо це всередину вашого <head> </head>

content="notranslate" для meta name="google"

має спрацювати у вашому випадку.


0

FYI, якщо ви хочете щось, що буде працювати для всього вмісту на вашому сайті (включаючи той, що не є HTML), ви можете встановити Content-Languageзаголовок у своїй відповіді ( джерелі ) на відповідну мову (у моєму випадку en-US).

Ця перевага тут полягає в тому, що вона "відключить" пропозицію перекласти сторінку для вас (оскільки вона буде правильно знати вихідну мову), але для інших, не рідних читачів, вони все одно матимуть можливість перекласти ваш сайт на свою мову, і це буде працювати правильно.

(Також для мого випадку використання, коли Chrome пропонував перекласти добре відформатований JSON з латинської на англійську, що BS відпадає.)


0

Щоб завжди працювати в будь-якому перекладачі, скопіюйте та вставте наведений вище код:

<html lang="en" class="notranslate" translate="no">    <!-- All translators -->
    <head><meta name="google" content="notranslate" /> <!-- Just for google -->
</head>                                                <!-- Close head      -->
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.