FastComments.com

Add Comments to Your Eleventy (11ty) Site

Dit is de officiële Eleventy (11ty) bibliotheek voor FastComments.

Voeg live reacties, chat- en review-widgets toe aan je Eleventy (11ty)-site.

Repository

Bekijk op GitHub


Live-presentatie Internal Link

Om elke shortcode en flow lokaal te zien draaien tegen de openbare demo tenant, kloon je de repo en voer je het volgende uit:

cd example
npm install
npm start

Elk component heeft een eigen pagina onder example/src/pages/ die je rechtstreeks kunt kopiëren naar je eigen Eleventy-site.

Installeren Internal Link

npm install fastcomments-11ty

Snel aan de slag Internal Link

Registreer de plugin in je Eleventy-config (.eleventy.js of eleventy.config.js):

const { fastcommentsPlugin } = require('fastcomments-11ty');

module.exports = function(eleventyConfig) {
    eleventyConfig.addPlugin(fastcommentsPlugin);
};

Of met ESM:

import { fastcommentsPlugin } from 'fastcomments-11ty';

export default function(eleventyConfig) {
    eleventyConfig.addPlugin(fastcommentsPlugin);
}

Gebruik daarna de shortcodes in je templates. In Nunjucks (.njk):

{% fastcomments { tenantId: "demo" } %}

In Liquid (.liquid):

{% fastcomments tenantId: "demo" %}

Vervang "demo" door je FastComments tenant-ID.

Shortcodes Internal Link

Shortcode Beschrijving
fastcomments Reactie-widget met antwoorden, stemmen en meer
fastcommentsCommentCount Toont het aantal reacties voor een pagina
fastcommentsImageChat Annotatie-reacties voor afbeeldingen
fastcommentsLiveChat Livechat-widget
fastcommentsCollabChat Collaboratieve inlineopmerkingen
fastcommentsRecentComments Recente reacties op de site
fastcommentsRecentDiscussions Onlangs actieve discussiedraden
fastcommentsReviewsSummary Samenvatting van sterrenbeoordelingen
fastcommentsTopPages Meest besproken pagina's
fastcommentsUserActivityFeed Gebruikersactiviteitenfeed

Voorbeelden

{# Reactieaantal inline met tekst #}
This page has {% fastcommentsCommentCount { tenantId: "demo" } %} comments.

{# Livechat #}
{% fastcommentsLiveChat { tenantId: "demo" } %}

{# Collab chat — wijs een contentelement aan met een CSS-selector #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcommentsCollabChat { tenantId: "demo", target: "#post-body" } %}

{# Image chat — wijs een afbeeldingselement aan met een CSS-selector #}
<img id="hero" src="/hero.jpg" alt="Hero image" />
{% fastcommentsImageChat { tenantId: "demo", target: "#hero" } %}

{# Samenvatting van beoordelingen #}
{% fastcommentsReviewsSummary { tenantId: "demo" } %}

{# Gebruikersactiviteitenfeed #}
{% fastcommentsUserActivityFeed { tenantId: "demo", userId: "demo:demo-user" } %}

Pluginopties Internal Link

eleventyConfig.addPlugin(fastcommentsPlugin, {
    // Registreer alleen een deel van de shortcodes:
    shortcodes: ['fastcomments', 'fastcommentsCommentCount'],
    // Voeg een voorvoegsel toe aan elke geregistreerde shortcode-naam (bijv. "fc" -> "fcFastcomments"):
    prefix: 'fc'
});

Handmatig gebruik (zonder de plugin) Internal Link

Elke shortcode wordt ook geëxporteerd als een op zichzelf staande functie die de HTML-string retourneert:

const { fastcomments, commentCount } = require('fastcomments-11ty');

eleventyConfig.addShortcode('comments', fastcomments);
eleventyConfig.addShortcode('commentCount', commentCount);

Voorbeeldproject Internal Link

Een werkende demo is opgenomen in de map example/:

cd example && npm install && npm start


Onderhoudsstatus Internal Link

Deze componenten zijn wrappers rond onze core VanillaJS-componenten. We kunnen deze componenten automatisch bijwerken (bugs oplossen, functies toevoegen) zonder deze bibliotheek te publiceren, dus hoewel het misschien een tijdje niet gepubliceerd wordt, betekent dat niet dat FastComments niet actief in ontwikkeling is! Bekijk gerust onze blog voor updates. Compatibiliteitsbrekende API-wijzigingen of -functies zullen nooit naar de onderliggende core-bibliotheek worden geleverd zonder een versieverhoging in deze bibliotheek.

Hulp nodig?

Als u problemen tegenkomt of vragen heeft over de Eleventy (11ty) bibliotheek, doe dan het volgende:

Bijdragen

Bijdragen zijn welkom! Bezoek de GitHub-repository voor richtlijnen voor bijdragen.