FastComments.com

Dodajte komentare na svoju Jekyll stranicu


Ovo je službena Jekyll biblioteka za FastComments.

Ugradite widgete za komentiranje uživo, chat i recenzije na svoju Jekyll stranicu.

Repozitorij

Pogledajte na GitHubu


Prikaz uživo Internal Link

Da biste vidjeli svaki tag kako radi lokalno protiv javnog demo tenanta, klonirajte repozitorij i pokrenite:

cd example
bundle install
bundle exec jekyll serve

Svaki widget ima svoju stranicu u example/ koju možete izravno kopirati u vlastiti Jekyll sajt.

Instalacija Internal Link

Gem

Dodajte gem u grupu :jekyll_plugins u Gemfile vaše stranice:

group :jekyll_plugins do
  gem "fastcomments-jekyll"
end

Zatim:

bundle install

(Kompatibilno s Jekyllom 3.7+ i 4.x.)

Oznake Internal Link


OznakaOpis
fastcommentsKomentiranje uživo s odgovorima, glasovanjem, moderiranjem i ažuriranjima u stvarnom vremenu
fastcomments_comment_countBroj komentara za trenutnu stranicu
fastcomments_comment_count_bulkBrojevi komentara za više stranica na jednoj stranici popisa/indeksa
fastcomments_live_chatWidget za chat u stvarnom vremenu
fastcomments_collab_chatSuradničko inline komentiranje (tekstualne bilješke)
fastcomments_image_chatKomentari s anotacijama na slikama
fastcomments_recent_commentsNedavni komentari na cijelom web-mjestu
fastcomments_recent_discussionsNedavno aktivne diskusije
fastcomments_reviews_summarySažetak recenzija sa zvjezdicama
fastcomments_top_pagesStranice s najviše rasprava
fastcomments_user_activity_feedFeed aktivnosti po korisniku

Primjeri

{% raw %}{# Brojač komentara. Widget prikazuje svoju etiketu, npr. "0 komentara" #}
{% fastcomments_comment_count %}

{# Chat uživo #}
{% fastcomments_live_chat %}

{# Suradnički chat. Usmjerite ga na element sadržaja pomoću CSS selektora #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcomments_collab_chat target="#post-body" %}

{# Chat za slike. Usmjerite ga na element slike pomoću CSS selektora #}
<img id="hero" src="/hero.jpg" alt="Hero image">
{% fastcomments_image_chat target="#hero" %}

{# Sažetak recenzija #}
{% fastcomments_reviews_summary %}

{# Feed korisničkih aktivnosti. Zahtijeva ID korisnika #}
{% fastcomments_user_activity_feed user_id="demo:demo-user" %}

{# Masovni brojevi komentara za indeks bloga #}
{% 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 %}

Konfiguracija Internal Link

Konfiguracija dolazi iz tri mjesta. Kasniji izvori imaju prednost:

  1. Globalne zadane postavke u _config.yml pod ključem fastcomments:.
  2. Kontekst stranice, izveden automatski za widgete ograničene na stranicu (pogledajte dolje).
  3. Atributi taga napisani na samom tagu.

Dakle, url_id na tagu nadjačava vrijednost dobivenu sa stranice, koja nadjačava bilo koju globalnu zadanu vrijednost.

Sintaksa atributa

Atributi su parovi key=value u snake_case:

{% raw %}{% fastcomments url_id="my-stable-id" readonly=true count=20 %}{% endraw %}
  • U navodnicima vrijednosti ("..." ili '...') su doslovni stringovi.
  • Bez navodnika true/false postaju logičke vrijednosti, a brojevi postaju numeričke vrijednosti.
  • Bez navodnika sve ostalo se rješava kao Liquid varijabla iz konteksta stranice, npr. url_id=page.slug. (Liquid ne proširuje {% raw %}\{{ ... }}{% endraw %} unutar atributa taga, stoga koristite oblik page.slug umjesto "{% raw %}\{{ page.slug }}{% endraw %}".)

Ključevi atributa i konfiguracije u snake_case automatski se preslikavaju u camelCase ključeve koje FastComments očekuje (tenant_idtenantId, url_idurlId, page_titlepageTitle, has_dark_backgroundhasDarkBackground, i tako dalje). Bilo koja druga opcija iz widget configuration prolazi bez promjena na isti način.

Vrijednosti dobivene sa stranice

Za widgete ograničene na stranicu (fastcomments, fastcomments_comment_count, fastcomments_live_chat, fastcomments_collab_chat, fastcomments_image_chat) ove se vrijednosti ispunjavaju automatski iz trenutne stranice osim ako ih sami ne postavite:

  • url_idpage.url (stabilni identifikator neovisan o domeni posjetitelja)
  • urlsite.url + page.url (samo kada je url postavljen u _config.yml)
  • page_titlepage.title

Widgeti koji su globalni za stranicu (najnoviji komentari/rasprave, top stranice, sažetak recenzija, feed aktivnosti korisnika, grupno brojanje) nisu vezani uz stranicu i ne nasljeđuju ove vrijednosti.

EU rezidencija podataka

EU kupci dodaju region: eu, ili globalno:

fastcomments:
  tenant_id: your-tenant-id
  region: eu

ili po tagu: {% raw %}{% fastcomments region="eu" %}{% endraw %}. Widgeti se tada učitavaju s EU CDN-a.



Status održavanja Internal Link

Ove komponente su omotači oko naših temeljnih VanillaJS komponenti. Te komponente možemo automatski ažurirati (ispraviti pogreške, dodati značajke) bez objavljivanja ove biblioteke, pa iako možda neće biti objavljena neko vrijeme, to ne znači da FastComments nije aktivno u razvoju! Slobodno provjerite naš blog za ažuriranja. Promjene API-ja koje prekidaju kompatibilnost ili nove značajke nikada neće biti dodane u temeljnu biblioteku bez povećanja verzije ove biblioteke.

Trebate pomoć?

Ako naiđete na bilo kakve probleme ili imate pitanja u vezi s Jekyll bibliotekom, molimo:

Doprinosi

Doprinosi su dobrodošli! Posjetite GitHub repozitorij za smjernice o doprinosu.