
Sprache 🇩🇪 Deutsch
Dokumentation
Erste Schritte
Konfiguration
Kommentare zu Ihrer Jekyll-Website hinzufügen
Dies ist die offizielle Jekyll-Bibliothek für FastComments.
Betten Sie Live-Kommentare sowie Chat- und Bewertungs-Widgets in Ihre Jekyll-Website ein.
Repository
Live-Demo 
Probieren Sie jedes Widget live unter https://fastcomments.com/commenting-system-for-jekyll aus.
Live-Showcase 
Um alle Tags lokal gegen den öffentlichen demo-Mandanten auszuführen, klonen Sie das Repository und führen Sie aus:
cd example
bundle install
bundle exec jekyll serve
Jedes Widget hat seine eigene Seite unter example/, die Sie direkt in Ihre eigene Jekyll-Site kopieren können.
Schnellstart 
Legen Sie Ihre Tenant-ID einmal in _config.yml fest:
fastcomments:
tenant_id: demo
Fügen Sie dann ein Tag an der Stelle ein, an der das Widget erscheinen soll, in einem Layout, einem Beitrag oder auf einer Seite:
{% raw %}{% fastcomments %}{% endraw %}
Das war's. Ersetzen Sie demo durch Ihre FastComments Tenant-ID (finden Sie diese unter Settings > API/SSO).
Tags 
| Tag | Beschreibung |
|---|---|
fastcomments | Echtzeit-Kommentare mit Antworten, Abstimmungen, Moderation und Live-Aktualisierungen |
fastcomments_comment_count | Anzahl der Kommentare für die aktuelle Seite |
fastcomments_comment_count_bulk | Kommentaranzahlen für viele Seiten auf einer Listen-/Indexseite |
fastcomments_live_chat | Echtzeit-Streaming-Chat-Widget |
fastcomments_collab_chat | Kollaborative Inline-Kommentare (Textannotationen) |
fastcomments_image_chat | Kommentare für Bildannotationen |
fastcomments_recent_comments | Aktuelle Kommentare auf der gesamten Website |
fastcomments_recent_discussions | Kürzlich aktive Diskussionen |
fastcomments_reviews_summary | Zusammenfassung der Sternebewertungen |
fastcomments_top_pages | Am meisten diskutierte Seiten |
fastcomments_user_activity_feed | Benutzerspezifischer Aktivitätsfeed |
Beispiele
{% raw %}{# Kommentaranzahl. Das Widget rendert sein eigenes Label, z. B. "0 Kommentare" #}
{% fastcomments_comment_count %}
{# Live-Chat #}
{% fastcomments_live_chat %}
{# Kollaborativer Chat. Richte ihn auf ein Inhaltselement mit einem CSS-Selektor aus #}
<article id="post-body">
<p>Highlight me to leave a comment.</p>
</article>
{% fastcomments_collab_chat target="#post-body" %}
{# Bild-Chat. Richte ihn auf ein Bildelement mit einem CSS-Selektor aus #}
<img id="hero" src="/hero.jpg" alt="Hero image">
{% fastcomments_image_chat target="#hero" %}
{# Zusammenfassung der Bewertungen #}
{% fastcomments_reviews_summary %}
{# Benutzer-Aktivitätsfeed. Erfordert eine Benutzer-ID #}
{% fastcomments_user_activity_feed user_id="demo:demo-user" %}
{# Sammel-Kommentaranzahlen für einen Blog-Index #}
{% for post in site.posts %}
<a href="\{{ post.url }}">\{{ post.title }}</a>
<span class="fast-comments-count" data-fast-comments-url-id="\{{ post.url }}"></span>
{% endfor %}
{% fastcomments_comment_count_bulk %}{% endraw %}
Konfiguration 
Config stammt aus drei Quellen. Spätere Quellen haben Vorrang:
- Globale Standardwerte in
_config.ymlunter demfastcomments:-Schlüssel. - Seitenkontext, der automatisch für seitenbezogene Widgets abgeleitet wird (siehe unten).
- Tag-Attribute, die direkt am Tag selbst geschrieben werden.
Ein url_id im Tag überschreibt also den seitenabgeleiteten Wert, der wiederum jeden globalen Standard überschreibt.
Attributsyntax
Attribute sind key=value-Paare in snake_case:
{% raw %}{% fastcomments url_id="my-stable-id" readonly=true count=20 %}{% endraw %}
- Quoted values (
"..."or'...') are literal strings. - Unquoted
true/falsebecome booleans, and numbers become numbers. - Unquoted anything else is resolved as a Liquid variable from the page context, e.g.
url_id=page.slug. (Liquid does not expand{% raw %}\{{ ... }}{% endraw %}inside a tag's attributes, so use the barepage.slugform rather than"{% raw %}\{{ page.slug }}{% endraw %}".)
Snake_case-Attribute und Konfigurationsschlüssel werden automatisch auf die camelCase-Schlüssel abgebildet, die FastComments erwartet (tenant_id → tenantId, url_id → urlId, page_title → pageTitle, has_dark_background → hasDarkBackground usw.). Jede andere Option aus der widget configuration wird auf dieselbe Weise direkt durchgereicht.
Von der Seite abgeleitete Werte
Für die seitenbezogenen Widgets (fastcomments, fastcomments_comment_count, fastcomments_live_chat, fastcomments_collab_chat, fastcomments_image_chat) werden diese automatisch aus der aktuellen Seite gefüllt, sofern Sie sie nicht selbst setzen:
url_id←page.url(ein stabiler Bezeichner, unabhängig von der besuchenden Domain)url←site.url+page.url(nur wennurlin_config.ymlgesetzt ist)page_title←page.title
Site-weite Widgets (neueste Kommentare/Diskussionen, Top-Seiten, Bewertungsübersicht, Benutzeraktivitäts-Feed, Sammelzählung) sind nicht an eine Seite gebunden und leiten diese Werte nicht ab.
EU-Datenresidenz
EU-Kunden fügen region: eu hinzu, entweder global:
fastcomments:
tenant_id: your-tenant-id
region: eu
oder pro Tag: {% raw %}{% fastcomments region="eu" %}{% endraw %}. Widgets werden dann vom EU-CDN geladen.
Wartungsstatus 
Diese Komponenten sind Wrapper um unsere Kern-VanillaJS-Komponenten. Wir können diese Komponenten automatisch aktualisieren (Fehler beheben, Funktionen hinzufügen), ohne diese Bibliothek veröffentlichen zu müssen, auch wenn sie möglicherweise eine Weile nicht veröffentlicht wird, bedeutet das nicht, dass FastComments nicht aktiv weiterentwickelt wird! Schau gern in unseren Blog für Updates. Kompatibilitätsbrechende API-Änderungen oder neue Funktionen werden niemals in die zugrunde liegende Kernbibliothek übernommen, ohne dass diese Bibliothek zuvor einen Versionssprung erhält.
Brauchen Sie Hilfe?
Wenn Sie auf Probleme stoßen oder Fragen zur Jekyll-Bibliothek haben, kontaktieren Sie uns bitte:
Mitwirken
Beiträge sind willkommen! Bitte besuchen Sie das GitHub-Repository für die Beitragsrichtlinien.