Personalisieren Sie das Supporterlebnis, indem Sie Ihren Kunden in Ihrem Help Center nur relevante Ticketformulare präsentieren. In diesem Tutorial zeigen wir, wie Sie bestimmte Ticketformulare basierend auf der Organisation eines Benutzers ausblenden.
Der Workflow umfasst die folgenden Schritte.
- Schritt 1: Bestimmen Sie die Ticketformular-ID
- Schritt 2: Bestimmen Sie den Organisationsnamen
- Schritt 3: Bearbeiten Sie den JavaScript-Code
Dieser Workflow funktioniert nicht für nicht authentifizierte Benutzer oder Benutzer ohne Organisation. Für diese Benutzer werden alle Formulare angezeigt.
Wenn Ihr Design Guide Templating V2 verwendet, müssen Sie jQuery importieren. Ausführliche Informationen finden Sie im folgenden Beitrag: Importieren oder Aktualisieren von jQuery.
Schritt 1: Bestimmen Sie die Ticketformular-ID
- Öffnen Sie in Ihren Ticketformularen das benötigte Ticketformular.
- Suchen Sie in der URL nach der ID-Nummer (nach dem letzten Schrägstrich).
Schritt 2: Bestimmen Sie den Organisationsnamen
- Öffnen Sie in Support die Registerkarte Kunden.
- Durchsuchen Sie die Organisationen, um den Namen der richtigen Organisation zu finden.
Schritt 3: Bearbeiten Sie den JavaScript-Code
Wenn Ihr Design Guide Templating V2 verwendet, müssen Sie jQuery importieren. Ausführliche Informationen finden Sie im folgenden Beitrag: Importieren oder Aktualisieren von jQuery. Dieser Code basiert auf dem DOMNodeInserted Mutation Event. Neuere Versionen von Chrome und Chromium unterstützen dieses Mutationsereignis nicht mehr. Um mit Browsern kompatibel zu sein, die DOMNodeInserted nicht unterstützen, befolgen Sie die Anweisungen von Mutation Observer und migrieren Sie auf eine neuere Funktion.
- Klicken Sie in der Seitenleiste von Guide auf das Symbol Erscheinungsbild anpassen ().
- Klicken Sie auf den Namen des Designs, das Sie bearbeiten möchten.
- Klicken Sie auf das Optionsmenü, wählen Sie Code bearbeiten aus und wählen Sie dann
Script.js
- Kopieren Sie den unten stehenden Codeblock.
$(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); }); } });
- Fügen Sie den Code in die JavaScript-Vorlage Ihres Help Center-Codes ein.
- Ersetzen Sie die Variable
formID = 6502769669773
durch die ID des Ticketformulars, das Sie ausblenden möchten. - Ersetzen Sie
"ZENDESK"
durch den Namen der Organisation, für die das Ticketformular sichtbar sein soll. - Wenn der Benutzer nicht alle Zeichen kopiert, z. B.
;
und}
auslässt, kann der Code die Seite beschädigen. - Speichern Sie die Vorlage und veröffentlichen Sie die Änderungen.
Der bereitgestellte Code reserviert Speicherplatz für andere Organisationen. Wenn Sie weitere Formulare und Organisationen hinzufügen möchten, kopieren Sie die oben genannte if
-Anweisung und fügen Sie sie unter der vorhandenen if
-Anweisung ein, wie unten gezeigt. Achten Sie darauf, die Ticketformular-ID durch die richtige ID und die zu prüfende Organisation zu ersetzen, und sehen Sie nach, ob der Benutzer darin vorhanden ist. Wiederholen Sie diesen Vorgang für beliebig viele Ticketformulare und Organisationen.
Wenn Sie das Verhalten des Codes so ändern möchten, dass ein einziges Ticketformular für alle Organisationen außer der angegebenen angezeigt wird, entfernen Sie den NOT
-Operator (!)
aus derif
-Anweisung.
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();
}