A Pesquisa do Google fornece várias funções relacionadas à tradução que permitem aos usuários acessar o conteúdo traduzido. Se a sua rede de publicidade não funcionar corretamente nas páginas da web traduzidas, você precisará seguir as recomendações fornecidas neste manual para que seus anúncios sejam exibidos corretamente e os atributos estejam conectados corretamente.
Quando os usuários recorrem ao conteúdo traduzido fornecido pelo Google traduzem dos resultados da pesquisa, o Google recebe uma página do editor, altera o URL de origem e traduz a página da web depois que o usuário clicou no resultado traduzido.
Se sua rede de publicidade depende do editor inicial de URL, você precisará converter o URL Google Translate para que os anúncios sejam exibidos corretamente. Siga estas etapas para decodificar o nome do host do editor:
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;
}
Você pode criar testes de unidade para o seu código usando a próxima tabela. Ao enviar proxyurl, a função DecodeHostName deve retornar o valor esperado.
A tabela a seguir é usada apenas para testar o nome do host. É necessário garantir que o caminho, o fragmento e os parâmetros originais da URL sejam mantidos inalterados.
| Proxyurl | DecodeHostName |
|---|---|
| Https: // exemplo-kom. Transavite. Hogo | exemplo.com |
| Https: // fo -example-kom. Transavite. Hogog | Fu. Exemplo.kom |
| Https: // fo --- Exemplo-kom. Transavite. Hogog | Fooo-expler.kom |
| Https: //0-57xh060o-oko.salyt. Goog/? _C_tr_ents = 0 | HN-57XH060O.K. |
| https: // 1-en-Us-Exemplo-com/? _x_tr_enc = 1 | En-usa exmple.k. |
| https: //lanfairpwlgwyngylgogogorychwyrndrobwllantyogoGoGocho-uk-uk.translate .goog/? _ x_tr_hp = lllanfairpwlgwyngygogogrogornbrobwllantysiliogogogoch.co.uk | LllanfirepvlgValGoGargartychyrndRovlelandiliogoGOGOGochch.so.uk |
Se você tiver dúvidas sobre a integração de transferências no seu site e a exibição correta de publicidade, entre em contato com a empresa SEO.computer SEO para qualquer problema para email info@seo.computer Ou no whatsapp +79202044461.
ID 168