FastComments.com

Dodajte komentare na vaš Jekyll sajt


Ovo je zvanična Jekyll biblioteka za FastComments.

Ugradi vidžete za komentarisanje uživo, chat i recenzije na svoj Jekyll sajt.

Repozitorijum

Pogledaj na GitHub-u


Prikaz uživo Internal Link

Da biste videli svaki tag koji se izvršava lokalno protiv javnog demo tenanta, klonirajte repo i pokrenite:

cd example
bundle install
bundle exec jekyll serve

Svaki widget ima sopstvenu stranicu pod example/ koju možete direktno kopirati u sopstveni Jekyll sajt.

Instalacija Internal Link

Gem

Dodajte gem u grupu :jekyll_plugins u Gemfile vašeg sajta:

group :jekyll_plugins do
  gem "fastcomments-jekyll"
end

Zatim:

bundle install

(Kompatibilno sa Jekyll 3.7+ i 4.x.)

Oznake Internal Link

TagOpis
fastcommentsKomentarisanje uživo sa odgovorima, glasovima, moderacijom i ažuriranjima u realnom vremenu
fastcomments_comment_countBroj komentara za trenutnu stranicu
fastcomments_comment_count_bulkBrojevi komentara za više stranica na jednoj listi/indeks stranici
fastcomments_live_chatWidget za chat u realnom vremenu
fastcomments_collab_chatKolaborativno inline komentarisanje (tekstualne anotacije)
fastcomments_image_chatKomentari za anotacije slika
fastcomments_recent_commentsNedavni komentari na sajtu
fastcomments_recent_discussionsNedavno aktivne teme diskusija
fastcomments_reviews_summarySažetak recenzija sa ocenama u zvezdicama
fastcomments_top_pagesNajdiskutovanije stranice
fastcomments_user_activity_feedFeed aktivnosti po korisniku

Primeri

{% raw %}{# Broj komentara. Widget prikazuje svoju oznaku, npr. "0 komentara" #}
{% fastcomments_comment_count %}

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

{# Kolaborativni chat. Usmerite 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. Usmerite 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. Zahteva ID korisnika #}
{% fastcomments_user_activity_feed user_id="demo:demo-user" %}

{# Grupni 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 potiče iz tri izvora. Kasniji izvori imaju prednost:

  1. Globalne podrazumevane vrednosti u _config.yml pod ključem fastcomments:.
  2. Kontekst stranice, automatski izveden za widgete koji su vezani za stranicu (videti dole).
  3. Atributi taga napisani direktno na tagu.

Dakle, url_id na tagu prevazilazi vrednost izvedenu sa stranice, koja pak prevazilazi bilo koju globalnu podrazumevanu vrednost.

Sintaksa atributa

Atributi su key=value parovi u snake_case:

{% raw %}{% fastcomments url_id="my-stable-id" readonly=true count=20 %}{% endraw %}
  • Vrednosti u navodnicima ("..." ili '...') su doslovni stringovi.
  • Bez navodnika true/false postaju booleani, a brojevi postaju brojevi.
  • Bez navodnika, sve ostalo se rešava kao Liquid promenljiva iz konteksta stranice, npr. url_id=page.slug. (Liquid ne proširuje {% raw %}\{{ ... }}{% endraw %} unutar atributa taga, zato koristite oblik page.slug umesto "{% raw %}\{{ page.slug }}{% endraw %}".)

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

Vrednosti izvedene iz stranice

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

  • url_idpage.url (stabilan identifikator nezavistan od domene posetioca)
  • urlsite.url + page.url (samo kada je url postavljen u _config.yml)
  • page_titlepage.title

Widgeti na nivou sajta (recent comments/discussions, top pages, reviews summary, user activity feed, bulk count) nisu vezani za stranicu i ne dobijaju ove vrednosti.

Rezidencija podataka u EU

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 sa EU CDN-a.

Status održavanja Internal Link

Ove komponente su omotači oko naših osnovnih VanillaJS komponenti. Možemo automatski ažurirati te komponente (ispraviti greške, dodati funkcionalnosti) bez objavljivanja ove biblioteke, tako da iako možda neće biti objavljena neko vreme, to ne znači da FastComments nije u aktivnom razvoju! Slobodno pogledajte naš blog za ažuriranja. Promene koje remete API ili nove funkcionalnosti nikada neće biti ubačene u osnovnu biblioteku bez povećanja verzije u ovoj biblioteci.

Trebate pomoć?

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

Doprinosi

Doprinosi su dobrodošli! Molimo posetite GitHub repozitorijum za smernice za doprinos.