Créez une expérience assistance personnalisée en ne présentant que les formulaires de ticket pertinents aux clients dans le centre d’aide. Dans ce didacticiel, vous allez apprendre à masquer des formulaires de ticket spécifiques en fonction de l’organisation d’un utilisateur.

Le workflow inclut les étapes ci-dessous :

  • Étape 1 : recherchez l’identifiant du formulaire de ticket
  • Étape 2 : recherchez le nom de l’organisation
  • Étape 3 : modifiez le code JavaScript

Ce workflow ne fonctionne pas pour les utilisateurs non authentifiés ou n’ayant pas d’organisation. Pour ces utilisateurs, tous les formulaires s’affichent.

Remarque : Si le thème utilise Guide Templating V2, vous devez importer jQuery . Ce code ne s’applique pas pour Guide Templating V4. Pour en savoir plus, consultez Versions de modèles pour les thèmes du centre d’aide .
Clause de non-responsabilité : Cet article est fourni à titre informatif uniquement. Zendesk ne fournit pas l’assistance pour le code et ne le garantit pas. Zendesk ne peut pas non plus fournir l’assistance pour les technologies tierces comme JavaScript, jQuery ou CSS. Si vous rencontrez des problèmes, publiez-en la description dans la section commentaires ou essayez de trouver une solution en ligne. Par ailleurs, il est possible que vous ne puissiez pas utiliser ce code si vous avez un thème personnalisé pour le centre d’aide plutôt que le code du thème Copenhague par défaut.

Étape 1 : Recherchez l’identifiant du formulaire de ticket

  1. Dans Formulaires de ticket , ouvrez le formulaire de ticket approprié.
  2. Dans l’URL, recherchez l’ID du formulaire, après la dernière barre oblique

identifiant du formulaire de ticket

Étape 2 : Recherchez le nom de l’organisation

  1. Dans Support, ouvrez l’onglet Clients
  2. Parcourez les organisations ou recherchez l’organisation par son nom.

Étape 3 : Modifiez le code JavaScript

Si le thème utilise Guide Templating V2 , vous devez importer jQuery. Pour en savoir plus, consultez Importation ou mise à niveau de jQuery . Ce code repose sur DOMNodeInserted Mutation Event. Les nouvelles versions de Chrome et Chromium ne prennent plus en charge cet événement de mutation. Pour être compatible avec les navigateurs qui ne prennent pas en charge DOMNodeInserted, suivez les instructions de l’observateur de mutation et effectuez la migration vers une fonction plus récente.

Pour modifier le code :

  1. Dans Connaissances , cliquez sur l’icône Volet de personnalisation (Icône Panneau de personnalisation ) dans la barre latérale
  2. Cliquez sur le nom du thème à modifier
  3. Cliquez sur le menu des options, puis sélectionnez Modifier le code , puis Script.js
  4. Copiez le bloc de code ci-dessous.

    $(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);
          });
        }
      });
  5. Collez le code dans le modèle JavaScript du code du centre d’aide .
  6. Remplacez la variable formID = 6502769669773 par l’identifiant du formulaire de ticket que vous souhaitez masquer.
  7. Remplacez "ZENDESK" par le nom de l’organisation pour laquelle vous voulez que le formulaire de ticket soit visible.
  8. Si vous ne copiez pas tous les caractères, par exemple,; et} du modèle, le code risque d’endommager la page
  9. Enregistrez le modèle et publiez les modifications.

Le code fourni réserve un espace pour d’autres organisations. Pour ajouter des formulaires et des organisations supplémentaires, copiez les balisesif ci-dessus et placez-la sous la baliseif ci-dessous. Remplacez l’identifiant du formulaire de ticket par l’identifiant du formulaire de ticket et l’organisation que vous souhaitez vérifier. Répétez cette procédure pour le nombre de formulaires de ticket et d’organisations souhaité.

Pour modifier le comportement du code afin d’afficher un formulaire de ticket dans toutes les organisations à l’exception de celle spécifiée, supprimez l’opérateur NOT (!) de 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();
 } 

Traduction - exonération : cet article a été traduit par un logiciel de traduction automatisée pour permettre une compréhension élémentaire de son contenu. Des efforts raisonnables ont été faits pour fournir une traduction correcte, mais Zendesk ne garantit pas l’exactitude de la traduction.

Si vous avez des questions quant à l’exactitude des informations contenues dans l’article traduit, consultez la version anglaise de l’article, qui représente la version officielle.

Réalisé par Zendesk