FastComments.com

Add Comments to Your Eleventy (11ty) Site


Це офіційна бібліотека Eleventy (11ty) для FastComments.

Вбудуйте віджети живих коментарів, чату та відгуків на вашому сайті Eleventy (11ty).

Репозиторій

Переглянути на GitHub


Жива демонстрація Internal Link

Щоб побачити кожен шорткод і флоу, які працюють локально проти публічного demo тенанта, склонуйте репозиторій і виконайте:

cd example
npm install
npm start

Кожен компонент має власну сторінку в example/src/pages/, яку ви можете скопіювати безпосередньо у свій власний сайт Eleventy.

Встановлення Internal Link

npm install fastcomments-11ty

Швидкий старт Internal Link

Зареєструйте плагін у конфігурації Eleventy (.eleventy.js або eleventy.config.js):

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

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

Або з ESM:

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

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

Потім використовуйте шорткоди у ваших шаблонах. У Nunjucks (.njk):

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

У Liquid (.liquid):

{% fastcomments tenantId: "demo" %}

Замініть "demo" на ваш FastComments tenant ID.

Шорткоди Internal Link

Shortcode Description
fastcomments Віджет коментарів із відповідями, голосуванням та інше
fastcommentsCommentCount Відображає кількість коментарів на сторінці
fastcommentsImageChat Коментарі-анотації для зображень
fastcommentsLiveChat Віджет живого чату
fastcommentsCollabChat Спільні вбудовані коментарі
fastcommentsRecentComments Останні коментарі на сайті
fastcommentsRecentDiscussions Нещодавно активні дискусії
fastcommentsReviewsSummary Підсумок відгуків зі зірковими оцінками
fastcommentsTopPages Найбільш обговорювані сторінки
fastcommentsUserActivityFeed Стрічка активності користувача

Приклади

{# Лічильник коментарів вбудовано в текст #}
This page has {% fastcommentsCommentCount { tenantId: "demo" } %} comments.

{# Живий чат #}
{% fastcommentsLiveChat { tenantId: "demo" } %}

{# Collab chat — націлити елемент контенту за допомогою CSS-селектора #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcommentsCollabChat { tenantId: "demo", target: "#post-body" } %}

{# Image chat — націлити елемент зображення за допомогою CSS-селектора #}
<img id="hero" src="/hero.jpg" alt="Hero image" />
{% fastcommentsImageChat { tenantId: "demo", target: "#hero" } %}

{# Підсумок відгуків #}
{% fastcommentsReviewsSummary { tenantId: "demo" } %}

{# Стрічка активності користувача #}
{% fastcommentsUserActivityFeed { tenantId: "demo", userId: "demo:demo-user" } %}

Параметри плагіна Internal Link

eleventyConfig.addPlugin(fastcommentsPlugin, {
    // Реєструйте лише підмножину шорткодів:
    shortcodes: ['fastcomments', 'fastcommentsCommentCount'],
    // Додайте префікс до кожного імені зареєстрованого шорткоду (наприклад "fc" -> "fcFastcomments"):
    prefix: 'fc'
});

Ручне використання (без плагіна) Internal Link

Кожен шорткод також експортується як окрема функція, яка повертає HTML-рядок:

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

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

Приклад проєкту Internal Link

У директорії example/ міститься робочий демо-приклад:

cd example && npm install && npm start


Статус підтримки Internal Link

Ці компоненти є обгортками навколо наших основних компонентів VanillaJS. Ми можемо автоматично оновлювати ці компоненти (виправляти помилки, додавати функції) без необхідності публікувати цю бібліотеку, тому навіть якщо вона деякий час не буде опублікована, це не означає, що FastComments не перебуває в активній розробці! Не соромтеся переглядати наш блог для оновлень. Зміни API, що порушують сумісність, або нові можливості ніколи не будуть включені до базової бібліотеки без підвищення версії цієї бібліотеки.

Потрібна допомога?

Якщо ви зіткнулися з будь-якими проблемами або маєте питання щодо бібліотеки Eleventy (11ty), будь ласка:

Участь

Внески вітаються! Будь ласка, відвідайте репозиторій GitHub для отримання інструкцій щодо внесків.