| Suite | Growth, Professional, Enterprise ou Enterprise Plus |
| Support com | Todos os planos do Guide |
Você pode personalizar facilmente a aparência da central de ajuda usando JavaScript e jQuery. Este manual foi projetado para ajudar você a deixar sua central de ajuda com a aparência que você quiser.
O jQuery não é fornecido por padrão. Certifique-se de importar uma biblioteca de jQuery se deseja usar as instruções de jQuery em um tema em vez de usar o Vanilla JavaScript. Consulte Importação ou atualização de jQuery para mais informações.
Também é possível personalizar a central de ajuda usando a sua linguagem de modelos ou CSS:
Lista de receitas
Ao longo do tempo adicionaremos mais receitas. Sua imaginação é o limite para o que você pode fazer com JavaScript. Publique suas ideias na seção de comentários para que possamos adicioná-las a esse manual.
- Alteração do texto do link Minhas atividades
- Ocultação de campos personalizados na barra lateral do ticket em Minhas atividades
- Renomeação dos rótulos “Assunto” e “Descrição” no formulário de solicitação
- Pré-preenchimento dos campos de formulários de ticket personalizados
- Alteração da ordem dos campos personalizados no formulário de solicitação
- Adição de cabeçalhos no formulário de solicitação
- Ocultação de um idioma no menu suspenso de idiomas
- Substituição de cadeias de caracteres de texto no seletor de idiomas com ícones de sinalização
- Ocultação da Comunidade de acordo com o idioma selecionado
- Impedimento da indexação de artigos por mecanismos de pesquisa
Alteração do texto do link Minhas atividades
Adicione a classe Minhas atividades ao modelo header.hbs:
{{link "my_activities" role="menuitem" class='my-activities'}}
Adicione a seguinte instrução de jQuery à função $(document).ready(function() no modelo JavaScript:
$(' .my-activities').html(' See my requests');
Ocultação de campos personalizados na barra lateral do ticket em Minhas atividades
É possível usar JavaScript para ocultar campos personalizados na barra lateral do ticket na página Minhas atividades. Use os rótulos dos campos personalizados como base para selecioná-los. Por exemplo, se o rótulo de um campo personalizado for "Member rewards", você poderá ocultá-lo se o texto dele contiver as palavras "Member", "rewards" ou "Member rewards".
Adicione a seguinte função jQuery no arquivo script.js:
$(document).ready(function() {
if (window.location.href.indexOf('/requests') > -1) {
setTimeout(function() {
$('dt:contains("Member rewards")').hide().next('dd').hide();
// add more selectors as necessary
}, 1000); // adjust the timeout duration as needed
}});
Renomeação dos rótulos “Assunto” e “Descrição” no formulário de solicitação
Adicione as seguintes instruções de jQuery à função $(document).ready(function() no modelo JavaScript:
$('label[for=request_subject]').html("Custom Subject");
$('label[for=request_description]').html("Custom Description");
Pré-preenchimento dos campos de formulários de ticket personalizados
Suponha que você use um formulário de ticket personalizado na sua central de ajuda para que os usuários registrem produtos. Você pode detectar o formulário e pré-preencher os campos quando um usuário abrir esse formulário na central de ajuda.
Você precisará da ID do formulário de ticket, que pode ser encontrada na URL do formulário na central de ajuda. Consulte este exemplo.
O exemplo de jQuery a seguir pré-preenche o campo Assunto com “Registro de produto” e o campo Descrição com “Este é o registro de um novo produto”. Adicione as instruções à função $(document).ready(function() no modelo JavaScript:
var ticketForm = location.search.split('ticket_form_id=')[1];
if(ticketForm == 18570) {
$('section.main-column h1').html('Product Registration');
$('#request_subject').val('Product Registration');
$('#request_description').val('There is a new product registration.');
$('#request_subject').parent('.request_subject').hide(); // Hide subject
$('#request_description').parent('.request_description').hide();
$("<p>Please upload your product receipt here.<p>").insertAfter('label:contains("Attachments")'); // Adds text below "Attachments"
}
Alteração da ordem dos campos personalizados no formulário de solicitação
Você precisará das IDs dos campos personalizados, que podem ser encontradas na interface do Zendesk Support. Consulte este exemplo.
var firstName = $('input#request_custom_fields_22231170').parent();
var lastName = $('input#request_custom_fields_22231180').parent();
firstName.insertBefore($('input#request_subject').parent());
lastName.insertBefore($('input#request_subject').parent());
Adição de cabeçalhos no formulário de solicitação
Adicione as seguintes instruções de jQuery à função $(document).ready(function() no modelo JavaScript:
$('.form-field.request_anonymous_requester_email').prepend('<h2>Your personal information</h2>')
$('.form-field.request_subject').prepend('<h2>Your issue</h2>');
$('.form-field.request_custom_fields_21875914').prepend('<h2>Your device information</h2>');
$('.form-field.request_custom_fields_22033620').prepend('<h2>Your purchase information</h2>');
$('.form-field > label:contains("Attachments")').prepend('<h2>Support attachments</h2>');
Ocultação de um idioma no menu suspenso de idiomas
Ocultar um idioma no seletor de idiomas pode ser útil se o conteúdo naquele idioma não estiver pronto para o lançamento. Adicione a seguinte instrução de jQuery à função $(document).ready(function() no modelo JavaScript:
$("ul.dropdown-panel li a:contains('Français')").hide();
Substituição de cadeias de caracteres de texto no seletor de idiomas com ícones de sinalização
Por exemplo, se a central de ajuda fornece conteúdo em inglês (EUA) e alemão, você pode exibir as bandeiras nacionais em vez de “inglês (EUA)” e “alemão” no seletor de idioma. Adicione a seguinte instrução de jQuery à função $(document).ready(function() no modelo JavaScript:
$(function(){
$('a.dropdown-toggle:contains("English (US)")').html('<img src="http://icons.iconarchive.com/icons/gosquared/flag/48/United-States-flat-icon.png" width="48" height="48">');
$('a.dropdown-toggle:contains("Deutsch")').html('<img src="http://icons.iconarchive.com/icons/gosquared/flag/48/Germany-flat-icon.png" width="48" height="48">');
$('a:contains("English (US)")').html('<img src="http://icons.iconarchive.com/icons/gosquared/flag/48/United-States-flat-icon.png" width="48" height="48">');
$('a:contains("Deutsch")').html('<img src="http://icons.iconarchive.com/icons/gosquared/flag/48/Germany-flat-icon.png" width="48" height="48">');
});
Ocultação da Comunidade de acordo com o idioma selecionado
Adicione a seguinte instrução de jQuery à função $(document).ready(function() no modelo JavaScript:
if (document.location.pathname.match( (/hc\/de/) || (/hc\/es/) )) {
$('.community').hide();
}
Impedimento da indexação de artigos por mecanismos de pesquisa
Uma metatag noindex informa aos mecanismos de pesquisa para não incluir a página específica em seus índices. Para adicionar dinamicamente uma metatag noindex a artigos específicos, adicione a seguinte função no arquivo script.js:
(function () {
// Get the current page URL
const url = window.location.href;
// Check if the URL is an article page
if (url.indexOf("/articles/") == -1) {
return;
}
//List the ids of articles to be excluded from indexing
const articles = [5555300573850, 5500012959342]; //Example article ids
for (let i = 0; i < articles.length; i++) {
if (url.indexOf(articles[i]) !== -1) {
//Create a new meta tag element
var meta_tag = document.createElement("meta");
meta_tag.setAttribute("name", "robots");
meta_tag.setAttribute("content", "noindex");
//Append the meta tag to the head of the document
document.head.appendChild(meta_tag);
}
}
})();
41 comentários
Austin Kettler
Hey Tipene Hughes
The date field is just the custom date field that the user can edit.
0
Tipene Hughes
Hey T5 Admin,
Would you mind sending through a snippet of how your custom date field is currently functioning and I can put together a working example based on your code.
Thanks!
Tipene
0
Austin Kettler
Hey,
I'm trying to make it so that a custom date field can't select a date in the past. Is that possible?
0
DJ Buenavista Jr.
I'm glad to hear that you were able to find a suitable solution. Please don't hesitate to reach out anytime if you need further help or questions.
Have a wonderful day ahead!
Kind regards,
0
Adam
Hey DJ Buenavista Jr.
Thank you for your recommendation.
I was able to find another solution with one of our Javascript engineers and is working as expected. I'll certainly keep the options you've shared in my back pocket if I have any issues with the one I'm using.
const links = document.querySelectorAll("a");for (const link of links) {
link.addEventListener('click', function (e) {
if (e.target.href == 'http://google.com') {
e.preventDefault();
window.open(link.href, '_newtab' + Date.now());
}
});
}
0
DJ Buenavista Jr.
In regards to your concern, the following script involves custom coding. I would advise searching online for solutions, but I have found some from looking online.
You can check an example from StackOverflow, here. Another one for reference can be found here.
Thank you and have a wonderful day ahead!
Kind regards,
0
Adam
Hello,
I'm looking for help on ticket forms in the Help Center. We currently have a URL in the description of a custom field. This allows our customer to reference the information on this page while filling out the form.
The issue we have discovered is that when the customer clicks on the link it opens the URL in the same window as the Help Center.
Does anyone one know how to capture this via Javascript and force the link to open into a new tab within the users browser?
1
Cheeny Aban
Are you trying to autofill a dropdown field on a ticket form? If yes, the Creating pre-filled ticket forms will help you
-1
Shawn Amsberry
Is it possible to autofill a field that is a dropdown menu field? Or does that only work for text entry fields? I can successfully hide fields on various forms and autofill text fields like the subject and description, but I have not been successful with drop menus.
Thanks!
0
Jessica G.
Olá Leonardo Ribeiro Da Silva!
Você pode dar uma olhada nessa outra documentação aqui referente à formulários e marcas :)
Esperamos que isso ajude, mas qualquer dúvida, entre em contato com o Suporte - Contato com o suporte ao cliente Zendesk.
0
Entrar para deixar um comentário.