FastComments.com


Personnalisations et configuration

Contexte

Ici, vous trouverez une documentation approfondie sur chacune des fonctionnalités et options que le widget de commentaires prend en charge.

Cette documentation couvrira les concepts de base et approfondira chaque domaine de fonctionnalité, avec des guides pratiques et les pièges courants.

Des exemples de code seront fournis, avec les lignes pertinentes en surbrillance. Des captures d’écran des pages de configuration seront fournies, le cas échéant.

Les exemples de code utiliseront notre bibliothèque JavaScript vanilla, toutefois les options de configuration utilisent exactement les mêmes noms pour toutes les versions du widget de commentaires (React, Vue, etc).

La plupart des configurations et fonctionnalités décrites dans ce guide ne nécessitent pas d’écrire du code.


Afficher les mêmes commentaires sur différentes pages Internal Link


Puisque le paramètre urlId nous permet de définir à quelle page ou à quel identifiant les commentaires sont liés, nous pouvons simplement attribuer la même valeur à urlId sur ces pages.

The Same Comments on Multiple Pages
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "urlId": "https://example.com/source-page"
8}];
9</script>
10

Polices personnalisées Internal Link

FastComments est conçu pour être personnalisé, et la police utilisée par nos widgets n'en fait pas exception.

Par défaut, FastComments utilise la system font stack pour offrir le meilleur rendu possible sur une grande variété d'appareils.

Pour définir vos propres polices, consultez la documentation CSS personnalisée.

Vous y trouverez une méthode pour définir du CSS personnalisé, ce qui vous permettra de spécifier les polices que vous souhaitez.

Comment définir la police

Pour remplacer la police, nous vous recommandons de définir votre CSS en utilisant les sélecteurs .fast-comments, textarea. Par exemple :

Exemple de police externe personnalisée
Copy CopyRun External Link
1
2@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap');
3.fast-comments, textarea {
4 font-family: 'Roboto', sans-serif;
5}
6

Prise en charge des arrière-plans sombres (mode sombre) Internal Link


Par défaut, le widget de commentaires FastComments détecte automatiquement le mode sombre sur la plupart des sites.

Lorsque le mode sombre est détecté, FastComments passera du texte noir sur fond blanc au texte blanc sur fond noir. Les images changeront aussi.

Au chargement de la page, le widget tentera de déterminer l'obscurité de l'arrière-plan de la page derrière le widget de commentaires. Cela signifie que la page peut avoir un arrière-plan blanc, mais si vous placez le widget de commentaires à l'intérieur d'un conteneur avec un fond noir, le mode sombre devrait toujours s'activer automatiquement pour rendre les commentaires lisibles.

Cependant, le mécanisme de détection, qui s'appuie sur la détermination de "luminance", peut ne pas activer le mode sombre lorsque vous le souhaitez. Pour l'activer de force, réglez le drapeau hasDarkBackground sur true comme suit :

Force Dark Background Mode
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "hasDarkBackground": true
8}];
9</script>
10

Lier les commentaires vers les pages Internal Link


Lors de l'envoi de courriels de notification, ou de l'affichage des commentaires dans des interfaces utilisateur comme la page de modération, il est utile de pouvoir créer un lien à partir du commentaire vers la page sur laquelle il se trouve.

Si l'ID d'URL n'est pas toujours un identifiant, alors nous devons stocker l'URL ailleurs. C'est à cela que sert la propriété "url", définie comme suit.

Defining a Custom URL
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "url": "https://example.com/article-5"
8}];
9</script>
10

Un cas d'utilisation courant consiste à lier le fil de commentaires à un identifiant, comme un article, puis à faire un lien vers une page particulière, par exemple :

Defining Custom URL and URL IDs together
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "url": "https://example.com/article-5",
8 "urlId": "article-5"
9}];
10</script>
11

L'URL n'est pas nettoyée des paramètres marketing courants. Par défaut, quelle que soit l'URL de la page actuelle, c'est cette URL qui est enregistrée avec le commentaire.


Déterminer quelle page afficher Internal Link

Quand on récupère et affiche des commentaires, le widget de commentaires doit savoir à quelle page commencer. Par défaut, il commence par la première page, n'affichant que cette page.

Si désiré, la page exacte à afficher peut être transmise au widget de commentaires via le réglage startingPage.

Specifying The Page to Render
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "startingPage": 1
8}];
9</script>
10

Notez que les numéros de page commencent à zéro, donc l'exemple ci‑dessus affiche la deuxième page.

Changer de fil de commentaires sans recharger la page Internal Link

Nous avons expliqué comment urlId est l'identifiant de la page ou de l'article auquel les commentaires sont liés.

Aussi, pour récapituler, si non défini, urlId prendra par défaut l'URL de la page courante.

Qu'en est-il des SPA, ou Single-Page-Applications, où la page ou le contenu auquel les commentaires sont liés change dynamiquement sans recharger la page ?

Angular, React, Vue, etc

Avec nos bibliothèques comme Angular et React, il suffit de mettre à jour la propriété urlId passée au widget pour que le widget de commentaires se rafraîchisse. Vous pouvez voir cela en action pour l'application React, par exemple, ici.

VanillaJS

Si vous utilisez la bibliothèque VanillaJS, c'est un peu plus compliqué puisqu'il n'y a pas de framework comme Angular ou React pour gérer le data binding ou la propagation d'état.

Quand vous instanciez le widget VanillaJS, il retourne certaines fonctions qui peuvent être appelées pour le mettre à jour.

Voici un exemple fonctionnel où nous changeons le hash de la page et mettons à jour le widget de commentaires :

Exemple de changement du hash de la page
Copy CopyRun External Link
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<button id="change-page"></button>
4<div id="fastcomments-widget"></div>
5<script>
6 (function fastCommentsMain() {
7 let config = {
8 tenantId: 'demo'
9 };
10 let instance = window.FastCommentsUI(document.getElementById('fastcomments-widget'), config);
11
12 let page = '#page-1';
13 function getNextPage() {
14 if (page === '#page-1') {
15 return '#page-2';
16 } else {
17 return '#page-1';
18 }
19 }
20
21 let button = document.getElementById('change-page');
22 function nextPage() {
23 page = getNextPage();
24 button.innerText = 'Go to ' + getNextPage();
25 window.location.hash = page;
26 let locationString = window.location.toString();
27
28 config.url = locationString; // Nous mettons aussi à jour url, afin que les notifications puissent renvoyer vers la bonne page
29 config.urlId = locationString;
30
31 instance.update(config);
32 }
33 nextPage();
34 button.addEventListener('click', nextPage);
35 })();
36</script>
37

Désactiver la redirection des images Internal Link

Par défaut, FastComments permet aux utilisateurs de téléverser des images. Lorsqu'un utilisateur clique sur cette image, FastComments ouvrira, par défaut, un nouvel onglet pour afficher l'image en entier. Définir ce drapeau sur true désactive ce comportement :

Disable Image Redirect
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "disableImageRedirect": true
8}];
9</script>
10

Si vous ne prévoyez pas d'intercepter le clic sur l'image vous-même (voir onImageClicked), nous recommandons de combiner cela avec du styling pour supprimer l'apparence que l'image peut être cliquée.

Mettre en évidence les nouveaux commentaires Internal Link

FastComments fournit plusieurs façons de mettre en évidence les nouveaux commentaires.

Tout d'abord, par défaut, les commentaires qui ont déclenché une notification intégrée (réponses, réponses dans le même fil, ou commentaires sur une page à laquelle vous êtes abonné), seront automatiquement mis en évidence avec l'avatar de l'utilisateur légèrement illuminé. La couleur peut être personnalisée via CSS en utilisant la classe is-unread.

Les commentaires publiés au cours des 24 dernières heures ont la classe 24hr appliquée, qui peut être utilisée pour le style.

Enfin, tous les nouveaux commentaires en direct qui apparaissent dans la session de l'utilisateur seront mis en évidence pendant plusieurs secondes via une animation. Cela se fait via la is-live classe CSS et peut également être personnalisée.

Modèles d'e-mails Internal Link


Les courriels envoyés par FastComments à vos clients peuvent être personnalisés. Le modèle, la logique, et les traductions peuvent tous être modifiés. Le texte peut être personnalisé par locale, et le style peut même être modifié par domaine. En savoir plus sur les modèles de courriel personnalisés ici.


Nouveaux commentaires en direct en bas Internal Link

Par défaut, les nouveaux commentaires en direct apparaissent en haut de la liste de commentaires au fur et à mesure qu'ils sont publiés en temps réel.

Lorsque cette option est activée, les nouveaux commentaires en direct seront ajoutés au bas de la liste à la place. Cela affecte la façon dont les commentaires apparaissent lorsqu'ils sont publiés en direct pendant que les utilisateurs consultent le fil de discussion.

New Live Comments to Bottom
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "newCommentsToBottom": true
8}];
9</script>
10

Avec ce paramètre activé :

  • Les nouveaux commentaires en direct publiés par d'autres utilisateurs apparaîtront au bas de la liste de commentaires
  • Les utilisateurs verront les nouveaux commentaires apparaître sous les commentaires existants en temps réel
  • Cela n'affecte que les mises à jour des commentaires en direct - pas le chargement initial de la page
  • Cela peut aider à maintenir le flux de lecture lorsque les utilisateurs suivent une discussion

Notez que ce paramètre n'affecte que l'endroit où les nouveaux commentaires en direct sont placés lorsqu'ils arrivent en temps réel. Il n'affecte pas l'ordre de tri initial lors du chargement de la page.

Activer le défilement infini Internal Link

Par défaut, le widget FastComments s'ajustera verticalement pour afficher tous les commentaires visibles. La pagination se fait au moyen d'un bouton «Afficher la suite» à la fin de la page en cours, car nous avons constaté que cette interaction est la plus agréable pour la plupart des utilisateurs.

Cependant, il existe des cas où le défilement infini est préférable. Par exemple, nous utilisons cette fonctionnalité dans notre produit Stream Chat.

Nous pouvons masquer les boutons «Afficher la suite» et passer au défilement infini en définissant le drapeau enableInfiniteScrolling sur true :

Enabling Infinite Scrolling
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "enableInfiniteScrolling": true
8}];
9</script>
10

Cela nécessite également l'ajout de CSS personnalisé. Ajoutez du CSS personnalisé pour le sélecteur .comments afin d'activer le défilement, par exemple :

Activer le défilement infini
Copy CopyRun External Link
1
2.comments {
3 max-height: 500px;
4 overflow-y: auto;
5}
6

Un exemple complet fonctionnel serait :

Enabling Infinite Scrolling
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "enableInfiniteScrolling": true,
8 "customCSS": ".comments { max-height: 500px; overflow-y: auto; }"
9}];
10</script>
11

Dans l'exemple ci-dessus, nous utilisons la propriété customCSS; toutefois, il est conseillé d'utiliser plutôt l'interface de configuration du widget pour des raisons de performance. Voir la documentation sur le CSS personnalisé.


Afficher tous les commentaires d'un coup - désactiver la pagination Internal Link

Pour désactiver la pagination et afficher tous les commentaires en une seule fois, définissez startingPage sur -1.

Render All Comments
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "startingPage": -1
8}];
9</script>
10

Empêcher les nouveaux commentaires de premier niveau Internal Link


Le fait de définir noNewRootComments sur true fera en sorte que le widget masque la zone de réponse racine, mais permettra toujours aux utilisateurs de répondre aux commentaires enfants. Par exemple, vous pourriez définir cela de façon conditionnelle au chargement de la page pour n'autoriser que certains utilisateurs à laisser des commentaires de premier niveau.

Prevent New Root Comments
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "noNewRootComments": true
8}];
9</script>
10

Profondeur maximale des réponses Internal Link

Par défaut, FastComments permet un emboîtement illimité des réponses, créant une structure de fil où les utilisateurs peuvent répondre indéfiniment aux réponses.

L'option maxReplyDepth vous permet de limiter la profondeur maximale des fils de réponses. Lorsque la profondeur maximale est atteinte, les utilisateurs ne verront plus de bouton de réponse sur les commentaires à ce niveau.

Limiting Reply Depth to 2 Levels
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "maxReplyDepth": 2
8}];
9</script>
10

Avec maxReplyDepth réglé à 2 :

  • Les utilisateurs peuvent commenter au niveau supérieur (profondeur 0)
  • Les utilisateurs peuvent répondre aux commentaires de niveau supérieur (profondeur 1)
  • Les utilisateurs peuvent répondre à ces réponses (profondeur 2)
  • Aucune réponse supplémentaire n'est autorisée au-delà de la profondeur 2

Le réglage à 1 ne permettrait que des réponses aux commentaires de niveau supérieur, créant une structure de discussion plus plate.

Définir maxReplyDepth à 0 désactiverait toutes les réponses, n'autorisant que les commentaires de niveau supérieur. Si non spécifié, les réponses peuvent être imbriquées sans limite.

Aperçu de l'authentification unique (SSO) Internal Link

SSO, ou authentification unique, est un ensemble de conventions utilisées pour vous permettre, à vous ou à vos utilisateurs, d'utiliser FastComments sans avoir à créer un autre compte.

En supposant que vous n'autorisez pas les commentaires anonymes, un compte est requis pour commenter avec FastComments. Nous facilitons grandement ce processus d'inscription : l'utilisateur laisse simplement son courriel lorsqu'il commente. Cependant, nous comprenons que même cela représente une friction supplémentaire que certains sites souhaitent éviter.

Nous pouvons réduire cette friction en n'ayant qu'un seul flux de connexion pour l'ensemble de votre site.

Comment l'obtenir ?

Tous les types de comptes ont actuellement accès au SSO. Cependant, le nombre maximal d'utilisateurs SSO variera selon votre forfait. Comme pour les autres fonctionnalités, les plans Pro et supérieurs offrent un support de développement direct.

Comparons les options, puis détaillons chacune.

Migration des utilisateurs et des commentaires

Lorsque vous migrez depuis une plateforme avec SSO comme Disqus, vous aurez déjà des utilisateurs et leurs commentaires.

Les commentaires sont importés dans le cadre de votre migration, soit via l'API, soit via notre interface d'importation, soit via le support client. L'interface d'importation est préférable si elle prend en charge la plateforme depuis laquelle vous migrez, car elle intègre la gestion des erreurs, l'extraction et le téléversement des avatars et des médias, ainsi qu'un système de suivi des tâches par lots.

Les utilisateurs eux-mêmes sont ajoutés automatiquement lors de la première visualisation des fils de discussion de commentaires. Alternativement, ils peuvent être ajoutés à l'avance via l'API, mais ce travail n'apporte pas beaucoup d'avantages.

Si les commentaires sont importés et que les utilisateurs SSO ne sont pas ajoutés manuellement via l'API, les commentaires seront automatiquement rattachés au compte de l'utilisateur la première fois que ce compte sera créé lors de la visualisation de n'importe quel fil de commentaires. Ils pourront alors gérer, modifier et supprimer les commentaires qu'ils ont initialement rédigés.

La migration automatique se fait par courriel ou par nom d'utilisateur. Certaines plateformes ne fournissent pas les courriels lors de l'exportation, comme Disqus, nous utilisons donc le nom d'utilisateur dans ce cas.

  • Tant que vous fournissez un nom d'utilisateur correspondant, et un courriel dans la charge utile SSO, nous ajouterons le courriel aux objets de commentaire individuels afin que les notifications et les mentions fonctionnent.

Si vous souhaitez importer vos commentaires et utilisateurs en même temps, travaillez avec le support pour migrer les commentaires vers les comptes respectifs des utilisateurs après que ceux-ci aient été importés via l'API.

Pour résumer, la voie la plus simple pour la migration est :

  1. Importer les commentaires.
    1. Les avatars et autres médias sont migrés automatiquement si vous utilisez l'Import UI dans Manage Data -> Imports.
  2. Configurer le SSO Secure ou Simple.
  3. Laisser la migration se faire par utilisateur automatiquement lorsqu'ils se connectent pour la première fois.
    1. Cela ajoute généralement moins d'une seconde au temps de chargement de la page si l'utilisateur a moins de 50k commentaires.

Utilisateurs WordPress

Si vous utilisez notre extension WordPress, il n'y a aucun code à écrire ! Allez simplement à la page d'administration du plugin, cliquez sur SSO Settings, puis Activez.

Cela vous amènera à un assistant d'un seul clic qui créera votre clé API, l'enverra à votre installation WordPress et activera le SSO. Nous avons consolidé cela en un seul clic pour vous.

Notez que si vous installez le plugin pour la première fois, vous devrez suivre le processus de configuration avant de voir la page d'administration avec le bouton SSO Settings.

SSO WordPress - Modérateurs

Notez qu'actuellement, pour que le badge « Modérateur » apparaisse à côté de vos modérateurs lorsqu'ils commentent avec le plugin FastComments pour WordPress, ils doivent également être ajoutés en tant que Modérateur dans le tableau de bord FastComments et avoir leur courriel vérifié.

Intégrations personnalisées

Pour les intégrations personnalisées, il y a deux options.

Option Une - SSO sécurisé

Avec le SSO sécurisé, FastComments sait que l'utilisateur qui commente, vote et lit les commentaires est un véritable utilisateur de votre site.

Tant que vous créez une charge utile valide, l'utilisateur bénéficiera toujours d'une expérience de commentaire fluide.

Avec le SSO sécurisé, la charge utile SSO est créée côté serveur en utilisant une authentification HMAC, puis transmise au widget côté client.

Avec le SSO sécurisé, le compte de l'utilisateur est complètement séparé du reste de la base d'utilisateurs de FastComments. Cela signifie que si nous avons deux partenaires Company A et Company B, chacun peut avoir un utilisateur SSO avec le nom d'utilisateur "Bob".

Exigences

  • Quelques connaissances de base en développement backend.
  • Quelques connaissances de base sur la gestion des clés API secrètes.
  • Quelques connaissances de base en développement d'API ou rendu côté serveur.

Avantages

  • Sécurisé.
  • Expérience de commentaire transparente.

Inconvénients

  • Nécessite du développement backend.

Mise à jour des données utilisateur

Avec le SSO sécurisé, chaque fois que vous transmettez la charge utile utilisateur SSO, nous mettrons à jour leur compte avec les dernières informations. Par exemple, si l'utilisateur a un nom d'utilisateur X, et que vous transmettez Y dans la charge utile SSO, son nom d'utilisateur deviendra Y.

Si vous souhaitez supprimer des valeurs en utilisant cette approche, définissez-les sur null (et non undefined).

API SSO sécurisé

Nous fournissons également une API pour interagir avec les utilisateurs SSO. Voir la documentation.

Notez que lors de l'utilisation du SSO sécurisé, les utilisateurs sont automatiquement créés en arrière-plan au chargement de la page. Vous n'avez pas à importer massivement vos utilisateurs.

Option Deux - SSO simple

L'alternative au SSO sécurisé est de simplement transmettre les informations de l'utilisateur au widget de commentaire.

Fournir un courriel avec le SSO simple n'est pas requis ; toutefois, sans celui-ci leurs commentaires s'afficheront comme « Non vérifié ».

Remarque ! À compter du début 2022, les noms d'utilisateur avec le SSO simple n'ont pas besoin d'être uniques sur l'ensemble de FastComments.com.

Idéalement, le SSO simple ne devrait être choisi que lorsque vous développez sur une plateforme qui ne fournit pas d'accès backend.

Exigences

  • Quelques connaissances de base en développement côté client.
  • Connaître au moins le courriel de l'utilisateur.

Avantages

  • Simple.
  • Toute l'activité est toujours vérifiée.
  • L'utilisateur ne saisit jamais son nom d'utilisateur ou son courriel.

Inconvénients

  • Moins sécurisé que le SSO sécurisé, car la charge utile côté client pourrait être falsifiée pour devenir n'importe quel utilisateur.

API SSO simple

Les utilisateurs créés automatiquement via le flux SSO simple sont stockés sous forme d'objets SSOUser. Ils peuvent être consultés et gérés via l'API SSOUser. Voir la documentation.

Intégrations personnalisées - Authentification unique simple (SSO) Internal Link

Avec Simple SSO, nous pouvons fournir au widget de commentaires des informations sur l'utilisateur afin qu'il n'ait pas à saisir son nom d'utilisateur ou son courriel pour commenter.

Nous pouvons configurer Simple SSO comme suit :

Simple SSO
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "simpleSSO": {
8 "username": "Bob",
9 "email": "bob@example.com",
10 "avatar": "https://example.com/bob.png",
11 "websiteUrl": "https://example.com/profiles/bob",
12 "displayName": "Bob's Name",
13 "displayLabel": "VIP User",
14 "loginURL": "https://example.com/login",
15 "logoutURL": "https://example.com/logout",
16 "badgeConfig": {
17 "badgeIds": [
18 "badge-id-1",
19 "badge-id-2"
20 ],
21 "override": false
22 }
23 }
24}];
25</script>
26

L'utilisateur sera connecté et un utilisateur SSO sera créé en arrière-plan. L'utilisateur aura createdFromSimpleSSO défini sur true s'il est récupéré via l'API.

Notes:

  • Le courriel est l'identifiant unique pour Simple SSO.
  • Fournir un courriel avec Simple SSO n'est pas obligatoire, cependant, par défaut, leurs commentaires s'afficheront comme "Non vérifié". Si aucun courriel n'est fourni, l'utilisateur ne peut pas être pleinement authentifié.
  • NOUVEAU Depuis janv. 2022 : les noms d'utilisateur n'ont pas à être uniques sur l'ensemble de fastcomments.com
  • Simple SSO peut créer et mettre à jour automatiquement des utilisateurs SSO, si un courriel est fourni, et si l'utilisateur n'a pas été créé à l'origine via Secure SSO.
  • Vous pouvez spécifier des badges pour l'utilisateur avec la propriété badgeConfig. Le tableau badgeIds contient les IDs des badges à associer à l'utilisateur. Si override est défini sur true, il remplacera tous les badges existants affichés sur les commentaires ; si false, il s'ajoutera aux badges existants.

Intégrations personnalisées - Migration depuis Disqus SSO Internal Link

Les plus grandes différences entre Disqus et FastComments Secure SSO sont que Disqus utilise SHA1 pour le chiffrement tandis que nous utilisons SHA256.

Cela signifie que la migration depuis Disqus est facile - changez l'algorithme de hachage utilisé de SHA1 à SHA256 et mettez à jour les noms des propriétés transmis à l'interface utilisateur.

Intégrations personnalisées - Migration depuis Commento SSO Internal Link

Commento utilise une approche SSO radicalement différente - ils exigent que vous ayez un point de terminaison qu’ils invoquent pour authentifier l’utilisateur. FastComments fonctionne à l’inverse - il suffit d’encoder et de hacher les informations de l’utilisateur en utilisant votre clé secrète et de les transmettre.

Fonctions de rappel Internal Link

Toutes les bibliothèques pour le widget de commentaires (actuellement Angular, React, Vue) prennent en charge les callbacks.

Les callbacks sont spécifiés dans l'objet de configuration, avec la même signature pour chaque bibliothèque.

Les callbacks supportés sont:

  • onInit
  • onAuthenticationChange
  • onRender
  • commentCountUpdated
  • onReplySuccess
  • onVoteSuccess
  • onImageClicked
  • onOpenProfile
  • onCommentSubmitStart
  • onCommentsRendered

Les signatures exactes se trouvent dans les définitions TypeScript.

Voici un exemple avec tous les callbacks utilisés:

Exemples de callbacks
Copy CopyRun External Link
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5 window.FastCommentsUI(document.getElementById('fastcomments-widget'), {
6 tenantId: 'demo',
7 onInit: function () {
8 console.log('Library started to fetch comments!');
9 },
10 onAuthenticationChange: function (eventName, userObj) {
11 console.log('User authenticated!', eventName, userObj);
12 },
13 onRender: function () {
14 console.log('Render event happened!');
15 },
16 commentCountUpdated: function (newCount) {
17 console.log('New comment count:', newCount);
18 },
19 onReplySuccess: function (comment) {
20 console.log('New comment saved!', comment);
21 },
22 onVoteSuccess: function (comment, voteId, direction, status) {
23 console.log('New vote saved!', comment, voteId, direction, status);
24 },
25 onImageClicked: function (src) {
26 console.log('Image clicked!', src);
27 },
28 onOpenProfile: function (userId) {
29 console.log('User tried to open profile', userId);
30 // return true; // renvoyer true pour empêcher le comportement par défaut (ouverture du profil utilisateur fastcomments.com).
31 },
32 onCommentSubmitStart: function(comment, continueSubmitFn, cancelFn) {
33 console.log('Trying to submit comment', comment);
34 setTimeout(function() { // émuler un comportement asynchrone (appel d'API, etc).
35 if(confirm('Should submit?')) {
36 continueSubmitFn();
37 } else {
38 cancelFn('Some optional error message');
39 }
40 }, 1000);
41 },
42 onCommentsRendered: function(comments) {
43 // comments est trié selon le tri par défaut de la page, qui peut être « Le plus pertinent » (ex. : le plus voté, etc.) ou « Les plus récents d'abord »
44 const topCommentInList = comments[0];
45 console.log('First Comment Rendered:', topCommentInList.avatarSrc, topCommentInList.commenterName, topCommentInList.commentHTML);
46 }
47 });
48</script>
49

Titres de page Internal Link

Le titre de la page actuelle est associé à l'urlId spécifié et est enregistré pour être utilisé dans les outils de modération.

Par défaut, il est récupéré depuis document.title.

Si vous le souhaitez, vous pouvez spécifier votre propre titre de page comme suit :

Specifying The Page Title
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "pageTitle": "Article 42"
8}];
9</script>
10

Le compteur de commentaires et le comptage de toutes les réponses imbriquées Internal Link

Le nombre de commentaires affiché en haut du widget de commentaires peut soit afficher tous les "commentaires de premier niveau", c’est-à-dire les réponses qui sont des réponses directement à la page ou à l’article lui-même, ou il peut s’agir d’un décompte de tous les commentaires imbriqués.

Par défaut, ceci est true - c’est un décompte de ce dernier - tous les commentaires. Dans les anciennes versions du widget de commentaires la valeur par défaut est false.

Nous pouvons modifier le comportement, afin qu’il s’agisse d’un décompte de tous les commentaires imbriqués en définissant le paramètre countAll sur true.

Counting All Comments
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "countAll": true
8}];
9</script>
10

Si nous voulions que le décompte reflète seulement les commentaires de premier niveau, nous réglons le paramètre sur false.

Counting Top Level Comments
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "countAll": false
8}];
9</script>
10

Cela ne peut actuellement pas être personnalisé sans modifications du code.

Identifiants de groupe pour les mentions Internal Link

Une liste d'identifiants à utiliser pour l'autocomplétion des @mentions. Utile lorsque vous voulez empêcher de taguer des utilisateurs qui n'ont pas de groupes en commun.

Lorsqu'elle est spécifiée, seuls les utilisateurs appartenant à d'autres groupes seront proposés dans l'autocomplétion après avoir tapé le caractère @.

Limit Groups for Mentions
Copy CopyRun External Link
1
2<script async src="https://cdn.fastcomments.com/js/embed-v2-async.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5window.fcConfigs = [{
6 "tenantId": "demo",
7 "mentionGroupIds": [
8 "yxZAhjzda",
9 "QT19nXbqB"
10 ]
11}];
12</script>
13