FastComments.com

Add Live Discussions to Super.So Sites


FastComments Collab Chat издига сайтовете на Super.so на следващото ниво, като добавя живи вградени дискусии. Потребителите могат да маркират и коментират части от текст съвместно, заедно - на живо!

Тук ще разгледаме стъпките за инсталиране, които би трябвало да отнемат само няколко минути.


Стъпка 1: Отворете настройките Internal Link

Първо трябва да отворим редактора на кода. Ако искате да добавите FastComments към всички страници, просто изберете Code в долния ляв ъгъл:

Отворете настройките на Code
Отворете настройките на Code

Ако искате да го добавите на конкретна страница, изберете Edit Custom Code в настройките на тази страница.

Сега нека да изберем раздела Body. Това е важно!. Инсталирането на кода в Head не работи.

Изберете Body
Изберете Body

Сега сте готови за стъпка 2.


Стъпка 2: Добавете готов код Internal Link


В следващата стъпка трябва да копирате готовия код на джаджа по-долу.

Докато сте влезли в профила си в FastComments.com, следният кодов откъс вече ще съдържа информацията за вашия акаунт. Нека го копираме:

Код за Collab Chat на Super.so FastComments
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-collab-chat.min.js"></script>
3<script>
4 (function () {
5 let currentPathname = window.location.pathname;
6 let currentWidget = null;
7 let currentTopBar = null;
8
9 function load() {
10 if (!window.FastCommentsCollabChat) {
11 console.log('...no script, trying again...');
12 return setTimeout(load, 100);
13 }
14
15 const target = document.querySelector('.super-content');
16 if (!target || !target.innerHTML || target.innerHTML.length < 100) {
17 console.log('...no content, trying again...');
18 return setTimeout(load, 100);
19 }
20
21 // Почистване на съществуващия екземпляр
22 if (target.fastCommentsInstance) {
23 target.fastCommentsInstance.destroy();
24 }
25
26 // Почистване на съществуващата горна лента, ако съществува
27 if (currentTopBar && currentTopBar.parentNode) {
28 currentTopBar.parentNode.removeChild(currentTopBar);
29 }
30
31 // Създаване на нова горна лента
32 const topBarTarget = document.createElement('div');
33 target.parentNode.insertBefore(topBarTarget, target);
34 topBarTarget.style.maxWidth = 'var(--layout-max-width)';
35 topBarTarget.style.margin = '0 auto';
36 currentTopBar = topBarTarget;
37 currentWidget = target;
38
39 // Инициализация на FastComments Collab Chat
40 target.fastCommentsInstance = FastCommentsCollabChat(target, {
41 tenantId: "demo",
42 topBarTarget: topBarTarget
43 });
44
45 // Актуализиране на текущия pathname
46 currentPathname = window.location.pathname;
47 }
48
49 // Първоначално зареждане
50 load();
51
52 // Проверка за промени на всеки 500 ms
53 setInterval(() => {
54 // Презареждане ако pathname се е променил
55 if (window.location.pathname !== currentPathname) {
56 console.log('Pathname changed, reloading...');
57 load();
58 return;
59 }
60
61 // Презареждане ако джаджата е премахната
62 if (currentWidget && !currentWidget.parentNode) {
63 console.log('Widget removed, reloading...');
64 load();
65 return;
66 }
67
68 // Презареждане ако контейнерът е изпразнен
69 const target = document.querySelector('.super-content');
70 if (target && target.innerHTML.length < 100) {
71 console.log('Container emptied, reloading...');
72 load();
73 }
74 }, 500);
75 })();
76</script>
77

Сега го поставете в областта Body:

Поставен код
Поставен код

If you see a "this is a demo message" after pasting the code:

  • Уверете се, че сте влязли във вашия акаунт в fastcomments.com.
  • Уверете се, че имате разрешени бисквитки на трети страни.
  • След това презаредете тази страница и копирайте кода отново. Той трябва да има попълнен tenantId с идентификатора на вашия tenant.

Вижте също: Обикновен уиджет за коментари Internal Link

Добавяне на уиджет за живи коментари към вашите Super.so Notion статии

В допълнение към Collab Chat, можете да добавите традиционен уиджет за коментари в долната част на вашите Notion статии. Това позволява на читателите да оставят коментари и да водят дискусии за цялата статия.

Стъпки за инсталиране

Копирайте следния код и го поставете в секцията Body на настройките на вашия сайт в Super.so:

Super.so FastComments Уиджет за живи коментари
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<script>
4 (function () {
5 let currentPathname = window.location.pathname;
6 let currentWidget = null;
7
8 function load() {
9 if (!window.FastCommentsUI) {
10 console.log('...no script, trying again...');
11 return setTimeout(load, 100);
12 }
13
14 const contentArea = document.querySelector('.notion-root');
15 if (!contentArea || !contentArea.innerHTML || contentArea.innerHTML.length < 100) {
16 console.log('...no content, trying again...');
17 return setTimeout(load, 100);
18 }
19
20 // Премахване на съществуващия екземпляр
21 if (contentArea.fastCommentsInstance) {
22 contentArea.fastCommentsInstance.destroy();
23 }
24
25 // Създаване на нов целеви елемент
26 const target = document.createElement('div');
27 contentArea.append(target);
28 currentWidget = target;
29
30 // Инициализиране на FastComments
31 contentArea.fastCommentsInstance = FastCommentsUI(target, {
32 tenantId: "demo",
33 urlId: window.location.pathname
34 });
35
36 // Актуализиране на текущия pathname
37 currentPathname = window.location.pathname;
38 }
39
40 // Първоначално зареждане
41 load();
42
43 // Проверка за промени на всеки 500 ms
44 setInterval(() => {
45 // Презареждане ако pathname се е променил
46 if (window.location.pathname !== currentPathname) {
47 console.log('Pathname changed, reloading...');
48 load();
49 return;
50 }
51
52 // Презареждане ако уиджетът е премахнат
53 if (currentWidget && !currentWidget.parentNode) {
54 console.log('Widget removed, reloading...');
55 load();
56 return;
57 }
58
59 // Презареждане ако контейнерът е изчистен
60 const contentArea = document.querySelector('.notion-root');
61 if (contentArea && contentArea.innerHTML.length < 100) {
62 console.log('Container emptied, reloading...');
63 load();
64 }
65 }, 500);
66 })();
67</script>
68

Важни бележки

  • Уиджетът за коментари ще се появи в края на вашите Notion статии
  • Всяка страница получава своя уникална нишка за коментари, базирана на пътя в URL-а
  • Уверете се, че заменяте "demo" с вашия реален tenant ID от акаунта ви във FastComments
  • Уиджетът автоматично обработва динамичното зареждане на страници на Super.so

Персонализиране Internal Link

FastComments е проектиран да бъде персонализиран, за да съответства на вашия сайт.

Ако искате да добавите персонализирани стилове или да настроите конфигурацията, Вижте нашата документация за персонализиране, за да научите как.