FastComments.com

Додавање коментара на ваш Jekyll сајт

Ово је званична Jekyll библиотека за FastComments.

Уградите виџете за коментарисање уживо, ћаскање и рецензије у ваш Jekyll сајт.

Репозиториј

Погледајте на GitHub


Презентација уживо Internal Link

Да бисте видјели све тагове који се покрећу локално против јавног demo тенанта, клонирајте репозиторијум и покрените:

cd example
bundle install
bundle exec jekyll serve

Сваки виџет има своју страницу под example/ коју можете директно копирати у свој Jekyll сајт.

Инсталација 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 sa Jekyll 3.7+ i 4.x.)

Ознаке Internal Link

ТагОпис
fastcommentsУживо коментарисање са одговорима, гласањем, модерацијом и ажурирањима у реалном времену
fastcomments_comment_countБрој коментара за тренутну страницу
fastcomments_comment_count_bulkБројеви коментара за више страница на једној листи/индекс страници
fastcomments_live_chatВидгет за стримовано ћаскање у реалном времену
fastcomments_collab_chatКолаборативно inline коментарисање (текстуалне анотације)
fastcomments_image_chatКоментари за анотације слика
fastcomments_recent_commentsНедавни коментари на целом сајту
fastcomments_recent_discussionsНедавно активне теме дискусије
fastcomments_reviews_summaryСажетак рецензија са звездицама
fastcomments_top_pagesСтранице са највише дискусија
fastcomments_user_activity_feedФид активности по кориснику

Примери

{% raw %}{# Brojanje komentara. Vidžet prikazuje svoju oznaku, npr. "0 коментара" #}
{% fastcomments_comment_count %}

{# Уживо чет #}
{% fastcomments_live_chat %}

{# Колаборативни чет. Укажите на елемент садржаја помоћу CSS селектора #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcomments_collab_chat target="#post-body" %}

{# Чет за слике. Укажите на елемент слике помоћу CSS селектора #}
<img id="hero" src="/hero.jpg" alt="Hero image">
{% fastcomments_image_chat target="#hero" %}

{# Сажетак рецензија #}
{% fastcomments_reviews_summary %}

{# Фид активности корисника. Захтијева user id #}
{% fastcomments_user_activity_feed user_id="demo:demo-user" %}

{# Скупни бројеви коментара за индекс блога #}
{% 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 %}

Конфигурација Internal Link

Конфигурација долази из три извора. Каснији извори имају предност:

  1. Глобални подразумевани параметри у _config.yml под кључем fastcomments:.
  2. Контекст странице, аутоматски изведен за виджете ограничене на страницу (погледајте испод).
  3. Атрибути тега написани у самом тегу.

Дакле, url_id на тегу преовладава над вредношћу изведеном са странице, која пак преовладава над било којим глобалним подешавањем.

Синтакса атрибута

Атрибути су парови key=value у snake_case:

{% raw %}{% fastcomments url_id="my-stable-id" readonly=true count=20 %}{% endraw %}
  • Вредности у наводницима ("..." или '...') су дословни низови.
  • Без наводника true/false постају булове, а бројеви постају бројеви.
  • Без наводника све остало се разрешава као Liquid променљива из контекста странице, нпр. url_id=page.slug. (Liquid не проширује {% raw %}\{{ ... }}{% endraw %} унутар атрибута тега, па користите голи page.slug облик уместо "{% raw %}\{{ page.slug }}{% endraw %}".)

Кључеви атрибута и конфигурације у snake_case аутоматски се мапирају на camelCase кључеве које FastComments очекује (tenant_idtenantId, url_idurlId, page_titlepageTitle, has_dark_backgroundhasDarkBackground, и тако даље). Било која друга опција из конфигурације виджета пролази исто тако.

Вредности изведене са странице

За виджете ограничене на страницу (fastcomments, fastcomments_comment_count, fastcomments_live_chat, fastcomments_collab_chat, fastcomments_image_chat) ове вредности се аутоматски попуњавају из текуће странице осим ако их сами не поставите:

  • url_idpage.url (стабилни идентификатор независан од домена посетилаца)
  • urlsite.url + page.url (само када је url подешен у _config.yml)
  • page_titlepage.title

Виджети који покривају цело сајт (нпр. недавни коментари/дискусије, најбоље странице, преглед рецензија, фид корисничке активности, групно бројање) нису везани за страницу и не користе ове вредности.

Резиденција података у ЕУ

Купци из ЕУ додају region: eu, или глобално:

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

или по тегу: {% raw %}{% fastcomments region="eu" %}{% endraw %}. Виджети ће се тада учитавати са CDN-а у ЕУ.



Статус одржавања Internal Link

Ове компоненте су омотачи око наших основних VanillaJS компоненти. Можемо аутоматски ажурирати те компоненте (исправити грешке, додати функције) без објављивања ове библиотеке, тако да иако можда неће бити објављена неко вријеме, то не значи да FastComments није у активном развоју! Слободно погледајте наш блог за ажурирања. Промјене које ломе API или нове функционалности никада неће бити испоручене у основну библиотеку без повећања верзије у овој библиотеци.

Потребна помоћ?

Ако наиђете на било какве проблеме или имате питања у вези са Jekyll библиотеком, молимо вас:

Допринос

Доприноси су добродошли! Молимо посетите GitHub репозиториј за смернице о доприносу.