FastComments.com

Tilføj kommentarer til dit Eleventy (11ty)-site


Dette er det officielle Eleventy (11ty) bibliotek til FastComments.

Integrer live-kommentarer, chat- og anmeldelses-widgets på dit Eleventy (11ty)-websted.

Repository

Se på GitHub


Live-præsentation Internal Link

For at se hver shortcode og flow køre lokalt imod den offentlige demo tenant, klon repoet og kør:

cd example
npm install
npm start

Hver komponent har sin egen side under example/src/pages/, som du kan kopiere direkte ind i dit eget Eleventy-site.

Installer Internal Link

npm

npm install fastcomments-11ty

Hurtig start Internal Link

Registrer plugin'et i din Eleventy-konfiguration (.eleventy.js eller eleventy.config.js):

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

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

Eller med ESM:

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

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

Brug derefter shortcodes i dine skabeloner. I Nunjucks (.njk):

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

I Liquid (.liquid):

{% fastcomments tenantId: "demo" %}

Erstat "demo" med dit FastComments tenant ID.

Kortkoder Internal Link

ShortcodeDescription
fastcommentsKommenteringswidget med svar, afstemning og mere
fastcommentsCommentCountVisar antal kommentarer på en side
fastcommentsImageChatKommentering på billeder (annotering)
fastcommentsLiveChatLivechat-widget
fastcommentsCollabChatSamarbejdende inline-kommentering
fastcommentsRecentCommentsSeneste kommentarer på tværs af siden
fastcommentsRecentDiscussionsFor nylig aktive diskussionstråde
fastcommentsReviewsSummaryOversigt over anmeldelser med stjernerating
fastcommentsTopPagesMest diskuterede sider
fastcommentsUserActivityFeedBrugeraktivitetsfeed

Eksempler

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

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

{# Samarbejdschat — mål et indholdselement med en CSS-selektor #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcommentsCollabChat { tenantId: "demo", target: "#post-body" } %}

{# Billedchat — mål et billedelement med en CSS-selektor #}
<img id="hero" src="/hero.jpg" alt="Hero image" />
{% fastcommentsImageChat { tenantId: "demo", target: "#hero" } %}

{# Oversigt over anmeldelser #}
{% fastcommentsReviewsSummary { tenantId: "demo" } %}

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

Pluginindstillinger Internal Link

eleventyConfig.addPlugin(fastcommentsPlugin, {
    // Registrer kun en delmængde af shortcodes:
    shortcodes: ['fastcomments', 'fastcommentsCommentCount'],
    // Tilføj et præfiks til hvert registreret shortcode-navn (f.eks. "fc" -> "fcFastcomments"):
    prefix: 'fc'
});

Manuel brug (uden plugin) Internal Link

Hver shortcode eksporteres også som en selvstændig funktion, der returnerer HTML-strengen:

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

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

Eksempelprojekt Internal Link


En fungerende demo er inkluderet i example/-mappen:

cd example && npm install && npm start



Vedligeholdelsesstatus Internal Link

Disse komponenter er wrappers omkring vores kerne VanillaJS-komponenter. Vi kan automatisk opdatere disse komponenter (rette fejl, tilføje funktioner) uden at udgive dette bibliotek, så selvom det måske ikke bliver udgivet i et stykke tid, betyder det ikke, at FastComments ikke er under aktiv udvikling! Du er velkommen til at tjekke vores blog for opdateringer. Kompatibilitetsbrydende API-ændringer eller funktioner vil aldrig blive sendt til det underliggende kernebibliotek uden en versionsstigning i dette bibliotek.

Brug for hjælp?

Hvis du støder på problemer eller har spørgsmål om Eleventy (11ty)-biblioteket, så:

Bidrag

Bidrag er velkomne! Besøg venligst GitHub-repositoriet for retningslinjer for bidrag.