Pergunta
Apaguei artigos na minha central de ajuda. Posso redirecionar o tráfego dos meus artigos apagados na central de ajuda?
Resposta
Sim, independentemente da fonte desse tráfego, é possível redirecionar automaticamente os usuários que visitam esses URLs para páginas mais úteis.
Acesso do arquivo JavaScript personalizado na central de ajuda
Para implementar essas soluções, acesse o arquivo JavaScript de sua central de ajuda:
- Entre no Zendesk Support como administrador. Em seguida, clique no ícone de produtos Zendesk ()na barra superior e selecione Guide.
- No canto superior direito do Zendesk Guide, selecione Guide admin.
- Clique no ícone Painel de personalização () na barra lateral.
- Clique em Personalizar no seu tema.
- Clique em Editar código.
- Clique no arquivo script.js.
Consulte as seções abaixo para obter exemplos de como implementar fluxos de trabalho de redirecionamento comuns:
- Exemplo 1: Redirecionamento de um conjunto de artigos apagados para novos equivalentes de artigos
- Exemplo 2: Redirecionamento de artigos não traduzidos para um idioma existente
- Exemplo 3: Redirecionamento de todos os artigos apagados para uma página específica
- Exemplo 4: Generalização ou especificação de quais artigos (ou publicações da comunidade) são redirecionados para uma página específica
Exemplo 1: Redirecionamento de um conjunto de artigos apagados para novos equivalentes de artigos
Nesse exemplo, a central de ajuda tem um conjunto de páginas antigas apagadas. Cada uma corresponde à uma nova página para a qual estamos fazendo o redirecionamento. Dentro das primeiras linhas do arquivo JavaScript, você verá uma linha que diz:
$(document).ready(function() {
window.addEventListener("DOMContentLoaded", () => {
}
Insira o código a seguir acima logo acima dessa linha:
var oldIds = ["217352077", "216552968"];
var newIds = ["216553098", "216552958"];
for (var i = 0; i < oldIds.length; i++){
if (window.location.href.indexOf( oldIds[i]) > -1) {
window.location.href = 'https://YOURSUBDOMAIN. zendesk.com/hc/en-us/articles/ ' + newIds[i];
}
}
Antes de salvá-lo, edite a parte do código que lista os IDs antigos e novos dos artigos:
var oldIds = ["217352077", "216552968"];
var newIds = ["216553098", "216552958"];
Adicione seus IDs de artigo em vez dos IDs acima. Para encontrar o ID do artigo, visualize o artigo em seu navegador. O URL será semelhante ao URL abaixo:
https://[YOURSUBDOMIAN].zendesk.com/hc/en-us/articles/203664386-Help-Center-guide-for-agents-and-end-users
No URL acima, o ID do artigo é 203664386
.
Para redirecionar adequadamente com essa solução, os IDs do artigo devem estar na mesma posição na matriz. Nesse caso, um artigo cujo URL contém 217352077
será redirecionado para 216553098
. O artigo que contém 216552968
será redirecionado para 216552958
.
Coloque esses IDs entre aspas, conforme visto acima, e separados por uma vírgula em cada caso. Ele teria esta aparência:
var oldIds = ["217352077", "216552968", "216552902"];
var newIds = ["216553098", "216552958", "216552944"];
Em seguida, edite o URL nesta linha:
window.location.href = 'https://YOURSUBDOMAIN. zendesk.com/hc/en-us/articles/ ' + newIds[i];
Use seu subdomínio ou, como alternativa, o URL inteiro da central de ajuda, como costuma aparecer na sua central de ajuda se o URL estiver em branco. Não remova o final da linha: "+ newIds[i];"
. É assim que o loop anexa seu novo ID de artigo ao seu URL. O código vai falhar sem ele.
Exemplo 2: Redirecionamento de artigos não traduzidos para um idioma existente
Neste exemplo, o conteúdo da central de ajuda existe em vários idiomas. Se todo o seu conteúdo estiver em inglês, mas apenas uma parte em francês e alemão, os usuários que tentarem acessar esses artigos em francês ou alemão receberão uma página de erro. Esse código redireciona os visitantes para fora da página de erro e de volta ao artigo em inglês existente.
var notDefaultLanguage = window.location.href.indexOf('/en-us/') == -1;
var isArticle = window.location.href.indexOf('/articles/') > -1;
var isErrorPage = $(".error-page").length > 0;
if ( isArticle && notDefaultLanguage && isErrorPage ) {
var newURL = window.location.href.replace(/(.*\/hc\/)([\w-]+)(\/.*)/, "$1en-us$3");
window.location.href = newURL;
}
Neste exemplo, apenas uma pequena personalização precisa ser feita. Se o idioma padrão da central de ajuda não for o inglês, substitua esse idioma. No código, en-us
é exibido em dois locais:
var notDefaultLanguage = window.location.href.indexOf('/en-us/') == -1;
E:
var newURL = window.location.href.replace(/(.*\/hc\/)([\w-]+)(\/.*)/, "$1en-us$3");
Substitua en-us
nessas duas linhas por seu código de idioma padrão. Localize seu código de idioma padrão no URL dos seus artigos principais. Por exemplo, um URL para uma página da central de ajuda em francês será semelhante ao exemplo abaixo:
https://[YOURSUBDOMAIN].zendesk.com/hc/fr/articles/214943538
Exemplo 3: Redirecionamento de todos os artigos apagados para uma página específica
Neste exemplo, uma central de ajuda redireciona todos os artigos apagados, sem incluir as publicações da comunidade, para um artigo específico.
Dentro das primeiras linhas do arquivo JavaScript, você verá uma linha que diz:
$(document).ready(function() {
window.addEventListener("DOMContentLoaded", () => {
}
Neste caso, insira o seguinte código logo abaixo dessa linha. Observação importante: inserir o código acima não funcionará neste exemplo:
if ( window.location.href.indexOf('articles') > -1 && $(".not-found").length > 0 ) {
window.location.href = 'https://[YOURSUBDOMAIN].zendesk.com/hc/en-us/articles/216553068-error-redirect';
}
Neste script, substitua o URL pelo URL do artigo para o qual sua central de ajuda será redirecionada.
Essa solução funcionará somente se garantirmos que .not-found
esteja na sua página de erro.
Na barra cinza na qual o link JS é exibido, clique no link Página inicial. Localize e selecione a Página de erro no menu suspenso. Na página de erro, você verá uma área que começa com o código {{#is error 'not_found'}}
. Ele terá esta aparência:
{{#is error 'not_found'}}
<h2>{{t 'nonexistent_page'}}</h2>
<p>{{t 'mistyped_address_or_moved_page'}}</p>
{{/is}}
Adicione uma nova classe para o elemento h2 ou a qualquer elemento dentro das tags 'not_found' #is
para que ele fique parecido com o seguinte:
<h2 class="not-found">{{t 'nonexistent_page'}}</h2>
Exemplo 4: Generalização ou especificação de quais artigos (ou publicações da comunidade) são redirecionados para uma página específica
Use essa solução para especificar ou generalizar personalizando a declaração if. Por exemplo, para redirecionar artigos ou publicações da comunidade apagados, altere a declaração if para:
if ( $(".not-found").length > 0 )
Como alternativa, para redirecionar apenas os artigos apagados que têm a palavra buttermilk
no título, altere a declaração if
para:
if ( window.location.href.indexOf('buttermilk') > -1 && $(".not-found").length > 0 )
Ao contrário da primeira solução apresentada, essas soluções vão exibir brevemente a página de erro, depois redirecionar para a nova página. Isso ocorre porque o JavaScript é usado para pesquisar um elemento dentro da página, que precisa ser carregado primeiro.