FastComments.com

FastComments поддерживает несколько типов реакций на странице. Мы поддерживаем то, что называем "Page Reacts" (демонстрируется внизу этой страницы) — это настраиваемые эмодзи, или иконки, которые могут отображаться над областью комментариев.

У нас также есть виджет Floating Likes, который появляется в правом нижнем углу экрана. Эта документация охватывает оба.

Реакции страницы Internal Link

Виджет Page Reacts отображает на виджете комментариев настраиваемый набор иконок реакций.

Пользователи могут кликать по изображениям, чтобы реагировать, и он запоминает реакции, которые они выбрали для каждой страницы. Если они вошли в систему на fastcomments.com, это привязано к их аккаунту.

Если вы нажмёте Run в приведённом ниже примере, вы увидите это в действии.

Установка — Vanilla JS Internal Link

Для Page Reacts нам нужно решить два вопроса:

  • Какие изображения реакций использовать.
  • Короткий id для названия каждой реакции.

Опционально:

  • Вы также можете задать отдельные изображения для выбранных/невыбранных реакций.
  • Вы можете решить, показывать ли список пользователей, которые отреагировали, при наведении курсора мыши на одну из реакций.
Пример кода Page Reacts
Copy CopyRun External Link
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<div id="page-reacts-example"></div>
4<script>
5 window.FastCommentsUI(document.getElementById('page-reacts-example'), {
6 tenantId: 'demo',
7 pageReactConfig: {
8 showUsers: true,
9 reacts: [
10 {id: 'droll', src: 'https://docs.fastcomments.com/images/emojis/droll.png'},
11 {id: 'he', src: 'https://docs.fastcomments.com/images/emojis/heart-eyes.png'},
12 {id: 'laugh', src: 'https://docs.fastcomments.com/images/emojis/laugh.png'},
13 {id: 'puke', src: 'https://docs.fastcomments.com/images/emojis/puke.png', selectedSrc: 'https://docs.fastcomments.com/images/emojis/puke-bw.png' },
14 {id: 'rofl', src: 'https://docs.fastcomments.com/images/emojis/rofl.png' },
15 ]
16 }
17 });
18</script>
19

Конфигурация для фронтенд-библиотек React, Angular и т. п. одинакова.

Плавающий виджет лайков Internal Link

Плавающий виджет лайков отображает плавающую панель в правом нижнем углу экрана с количеством лайков и комментариев. Вы можете увидеть его в действии на этой странице!

Пользователи могут нажать на сердечко, чтобы поставить лайк странице, и виджет запоминает страницы, которые они лайкали. Если они авторизованы на fastcomments.com, это привязано к их аккаунту, что помогает предотвратить многократное голосование за одну и ту же страницу.

Он также автоматически определяет предпочтения браузера пользователя по тёмному режиму и при желании переключает оформление на тёмную версию.

Установка — Vanilla JS Internal Link

Установка проста:

Пример кода Floating Likes
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo'
7 });
8</script>
9

Сигнатура конструктора:

Конфигурация
Copy Copy
1
2/**
3 *
4 * @param {HTMLElement} targetElement
5 * @param config
6 * @property {string} tenantId
7 * @property {string} urlId - Change this to set page/article id. By default, it is the page URL.
8 * @property {() => void} [onOpenComments]
9 * @property {object} [sso]
10 * @constructor
11 */
12

Он поддерживает sso для привязки реакций к учётной записи пользователя для аутентификации.

В настоящее время поддерживается только VanillaJS. Если вы хотите, чтобы этот виджет был добавлен в одну из наших клиентских библиотек, дайте нам знать!

Асинхронная версия

Асинхронный пример кода Floating Likes
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js?v=2" async></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 (function () {
6 function tryLoad() {
7 if (window.FastCommentsEmbedPageLikesFloating) {
8 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
9 tenantId: 'demo'
10 });
11 } else {
12 setTimeout(tryLoad, 50);
13 }
14 }
15
16 tryLoad();
17 })();
18</script>
19

С SSO

Мы также можем передавать полезные нагрузки Secure SSO или Simple SSO:

Пример кода Floating Likes с Secure SSO
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo',
7 sso // pass sso object
8 });
9</script>
10
Пример кода Floating Likes с Simple SSO
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo',
7 simpleSSO: {
8 id: 'some-user-id',
9 username: 'some username',
10 email: 'some@email.com',
11 }
12 });
13</script>
14

Установка — WordPress Internal Link


Для WordPress эту функцию можно включить, установив плагин, например WPCode, и добавив следующий HTML-фрагмент в нижний колонтитул блога:

Код плавающих лайков для WordPress
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js" async></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 (function () {
6 function tryLoad() {
7 if (window.FastCommentsEmbedPageLikesFloating) {
8 const articles = document.getElementsByTagName('article');
9 if (!articles.length) {
10 return console.warn('Article not found to show fastcomments likes.');
11 }
12 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
13 tenantId: '-VuPDR12d-v_',
14 urlId: articles[0].id.replace('post-', '')
15 });
16 } else {
17 setTimeout(tryLoad, 50);
18 }
19 }
20
21 tryLoad();
22 })();
23</script>
24