Crea un’esperienza assistenza personalizzata presentando ai clienti solo i moduli ticket pertinenti nel centro assistenza. In questo tutorial apprenderai come nascondere moduli ticket specifici in base all’organizzazione di un utente.
Il workflow include i passaggi seguenti.
- Fase 1: Trova l'ID del modulo del ticket
- Fase 2: Trova il nome dell'organizzazione
- Fase 3: Modifica il codice JavaScript
Questo workflow non funziona con gli utenti non autenticati o che non hanno un'organizzazione. Per questi utenti, vengono visualizzati tutti i moduli.
Passaggio 1. Trova l'ID del modulo del ticket
- In Moduli ticket , apri il modulo ticket appropriato
- Nell’URL, trova il numero ID, dopo l’ultima barra
Passaggio 2. Trova il nome dell'organizzazione
- In Support, apri la scheda Clienti
- Sfoglia o cerca le organizzazioni per trovare il nome corretto
Passaggio 3. Modifica il codice JavaScript
Se il tema usa i modelli Guide versione 2 , devi importare jQuery. Per maggiori dettagli, consulta Importazione o aggiornamento di jQuery . Questo codice si basa sull’evento di mutazione DOMNodeInserted. Le versioni più recenti di Chrome e Chromium hanno sospeso il supporto per questo evento di mutazione. Per garantire la compatibilità con i browser che non supportano DOMNodeInserted, segui le linee guida di Mutation Observer ed esegui la migrazione a una funzione più recente.
Per modificare il codice:
- In Knowledge , fai clic sull’icona Personalizza design (
) nella barra laterale - Fai clic sul nome del tema da modificare
- Fai clic sul menu delle opzioni, seleziona Modifica codice e seleziona
Script.js -
Copia il blocco di codice qui sotto.
$(document).ready(function() { var formID = 6502769669773; // Change this to the form ID you wish to remove var userOrgs = window.HelpCenter.user.organizations; var userOrgNames = userOrgs.map(org => org.name); if (!(userOrgNames.includes("ZENDESK"))) { // Specify the organization name here // If the user does not belong to the organization specified, remove the form option from the dropdown $('#request_issue_type_select option[value="' + formID + '"]').remove(); $('.nesty-panel').on('DOMNodeInserted', function(e) { $(this).children('ul').children().remove('#' + formID); }); } }); - Incolla il codice nel modello JavaScript del codice del centro assistenza
- Sostituisci la variabile
formID = 6502769669773con l’ID del modulo ticket da nascondere - Sostituisci
"ZENDESK"con il nome dell’organizzazione per la quale desideri sia visibile il modulo ticket. - Se non copi tutti i caratteri, come
;e}dal modello, il codice potrebbe interrompere la pagina - Salva il modello e pubblica le modifiche
Il codice fornito riserva spazio per altre organizzazioni. Per aggiungere ulteriori moduli e organizzazioni, copia il fileif istruzione sopra e inserirla sotto l’istruzione esistenteif dichiarazione qui sotto. Sostituisci l’ID modulo ticket con quello corretto e l’organizzazione da controllare. Ripeti l'operazione per tutti i moduli ticket e le organizzazioni che desideri.
Per modificare il comportamento del codice in modo da visualizzare un modulo ticket a tutte le organizzazioni tranne quella specificata, rimuovi l’operatore NOT (!) dalla dichiarazione if.
for (var c in HelpCenter.user.organizations) {
if (HelpCenter.user.organizations[c].name !== "ZENDESK"){
$("#TICKT_FORM_ID").remove();
}
if (HelpCenter.user.organizations[c].name !== "MYORG"){
$("#TICKET_FORM_ID2").remove();
} Avvertenza sulla traduzione: questo articolo è stato tradotto usando un software di traduzione automatizzata per fornire una comprensione di base del contenuto. È stato fatto tutto il possibile per fornire una traduzione accurata, tuttavia Zendesk non garantisce l'accuratezza della traduzione.
Per qualsiasi dubbio sull'accuratezza delle informazioni contenute nell'articolo tradotto, fai riferimento alla versione inglese dell'articolo come versione ufficiale.