Как настроить работу вашей рекламной сети с функциями перевода в Гугл (Google) Search для вашего сайта в Гугл (Google)

Как настроить работу вашей рекламной сети с функциями перевода в Гугл (Google) Search для вашего сайта в Гугл (Google)

Гугл (Google) Search предоставляет несколько функций, связанных с переводом, которые позволяют пользователям получить доступ к переведенному контенту. Если ваша рекламная сеть не работает должным образом на переведенных веб-страницах, вам необходимо следовать рекомендациям, приведенным в этом руководстве, чтобы ваши объявления корректно отображались и атрибуты были правильно привязаны.

Наш подход к работе с переводами для вашего сайта в Гугл (Google)

Когда пользователи обращаются к переведенному контенту, предоставленному Гугл (Google) Translate из поисковых результатов, Гугл (Google) получает страницу от издателя, изменяет исходный URL и выполняет перевод веб-страницы после того, как пользователь кликнул на переведенный результат.

Как преобразовать URL Гугл (Google) Translate в оригинальный URL для вашего сайта в Гугл (Google)

Если ваша рекламная сеть зависит от исходного URL издателя, вам нужно преобразовать URL Гугл (Google) Translate, чтобы объявления отображались корректно. Следуйте этим шагам, чтобы декодировать имя хоста издателя:

  • Извлеките префикс домена из имени хоста, удалив суффикс .translate.goog.
  • Разделите параметр _x_tr_enc на части, используя запятую (,) и сохраните их как encoding_list.
  • Добавьте значение параметра _x_tr_hp к префиксу домена, если оно существует.
  • Если encoding_list содержит 1 и вывод начинается с 1-, удалите префикс 1- из результата шага 2.
  • Если encoding_list содержит 0 и вывод начинается с 0-, удалите префикс 0- из результата шага 3. Если префикс был удален, установите is_idn в true, иначе установите его в false.
  • Замените /-/ (регулярное выражение) на точку (.) в строке.
  • Замените двойное тире (--) на одинарное тире (-).
  • Если is_idn установлено в true, добавьте префикс punycode xn--.
  • Опционально: Преобразуйте в Unicode.

Пример JavaScript-кода для декодирования имени хоста из URL Гугл (Google) Translate

function decodeHostname(proxyUrl) {
 const parsedProxyUrl = new URL(proxyUrl);
 const fullHost = parsedProxyUrl.hostname;
 // 1. Извлеките префикс домена из имени хоста, удалив суффикс ".translate.goog"
 let domainPrefix = fullHost.substring(0, fullHost.indexOf('.'));
 // 2. Разделите параметр _x_tr_enc на части, используя запятую, и сохраните как encodingList
 const encodingList = parsedProxyUrl.searchParams.has('_x_tr_enc') ?
 parsedProxyUrl.searchParams.get('_x_tr_enc').split(',') : [];
 // 3. Добавьте значение параметра _x_tr_hp к префиксу домена, если оно существует
 if (parsedProxyUrl.searchParams.has('_x_tr_hp')) {
 domainPrefix = parsedProxyUrl.searchParams.get('_x_tr_hp') + domainPrefix;
 }
 // 4. Удалите префикс '1-' из результата шага 2, если encodingList содержит '1' и результат начинается с '1-'.
 if (encodingList.includes('1') && domainPrefix.startsWith('1-')) {
 domainPrefix = domainPrefix.substring(2);
 }
 // 5. Удалите префикс '0-' из результата шага 3, если encodingList содержит '0' и результат начинается с '0-'.
 // Установите isIdn в true, если префикс был удален, в false в противном случае.
 let isIdn = false;
 if (encodingList.includes('0') && domainPrefix.startsWith('0-')) {
 isIdn = true;
 domainPrefix = domainPrefix.substring(2);
 }
 // 6. Замените /-/ на точку (.)
 // 7. Замените двойное тире на одно тире.
 let decodedSegment = domainPrefix.replaceAll(/-/g, '.').replaceAll('--', '-');
 // 8. Если isIdn равно true, добавьте префикс 'xn--'.
 if (isIdn) {
 decodedSegment = 'xn--' + decodedSegment;
 }
 return decodedSegment;
}

Как восстановить оригинальный URL для вашего сайта в Гугл (Google)

  • Используя оригинальный URL страницы, замените имя хоста на декодированное имя хоста.
  • Удалите все параметры _x_tr_*.

Как протестировать ваш код на вашем сайте в Гугл (Google)

Вы можете создать юнит-тесты для вашего кода, используя следующую таблицу. При подаче proxyUrl, функция decodeHostname должна возвращать ожидаемое значение.

Следующая таблица используется только для тестирования декодирования имени хоста. Необходимо удостовериться, что путь, фрагмент и оригинальные параметры URL сохраняются в неизменном виде.

proxyUrl decodeHostname
https://example-com.translate.googexample.com
https://foo-example-com.translate.googfoo.example.com
https://foo--example-com.translate.googfoo-example.com
https://0-57hw060o-com.translate.goog/?_x_tr_enc=0xn--57hw060o.com
https://1-en--us-example-com/?_x_tr_enc=1en-us.example.com
https://lanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch-co-uk.translate.goog/?_x_tr_hp=lllanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch.co.uklllanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch.co.uk

Если у вас есть вопросы по интеграции переводов на вашем сайте и правильному отображению рекламы, вы можете обратиться в seo-компанию "seo.computer" по любому вопросу на email info@seo.computer или в WhatsApp +79202044461.

id 168

Отправьте заявку и мы предоставим консультацию на SEO продвижение вашего сайта