FastComments.com

Add Comments to ThriveCart Learn+ Courses

Sa FastComments možemo lako dodati komentare u realnom vremenu na bilo koji ThriveCart Learn+ Course.

Ako imate bilo kakvih problema sa podešavanjem, FastComments podrška takođe može pružiti pomoć.


Imajte na umu da ovaj vodič zahteva FastComments nalog. Preporučuje se da se prvo registrujete, a zatim vratite ovde. Možete kreirati nalog ovde.


Korak 1: Pripremite kurs Internal Link

Zbog dizajna ThriveCart Learn+, moramo dodati FastComments kod na svaku stranicu kursa na kojoj želimo prikazivati komentare.

Možemo koristiti isti kod na svakoj stranici, a odvojeni threadovi komentara biće automatski vezani za svaku pojedinačnu stranicu.

Počećemo tako što ćemo otvoriti kurs u editoru i dodati HTML blok.

S leva bi trebalo da vidite opciju HTML bloka. Prevucite je na stranicu na mestu gde želite da prikažete komentare.

Otvorite kurs i dodajte HTML blok
Otvorite kurs i dodajte HTML blok

Sada izaberite novi HTML element. Sa leve strane pojaviće se blok u koji možemo nalepiti naš kod.

Sada ste spremni za Korak 2.

Korak 2: Dodajte prilagođeni kod Internal Link

Za korak 2 moramo kopirati naš kod. Proverite da linija 50 ne sadrži "demo" - želite da budete sigurni da ovo sadrži vaš tenant id. Trebalo bi da bude popunjeno za vas.

Sada kopirajmo naš ThriveCart-Learn-specifični FastComments kod.

On je prilično velik, jer integracija sa ThriveCart ima mnogo funkcija, pa samo kliknite dugme Copy u gornjem desnom uglu bloka koda:

ThriveCart Learn+ kod za komentare
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<div id="fastcomments-widget"></div>
4<script>
5 (function () {
6 let attemptsRemaining = 10;
7
8 function tryLoad() {
9 const simpleSSO = {optedInNotifications: true, optedInSubscriptionNotifications: true};
10 let isAuthenticated = false;
11 let profileLink = document.querySelector('.thrivecart-courses-header-profile-link');
12 if (!profileLink) {
13 profileLink = document.querySelector('.thrivecart-courses-header-profile'); // klasa je drugačija za pregled.
14 }
15 // širok selektor polja za email u slučaju da ThriveCart promeni id.
16 const emailInputField = document.querySelector('input[type=email]');
17 if (emailInputField && emailInputField.value) {
18 isAuthenticated = true;
19 simpleSSO.email = emailInputField.value;
20 } else if (profileLink && !profileLink.innerText.includes('John Smith')) { // dozvoli da pregled funkcioniše - nema dostupnog emaila.
21 attemptsRemaining--;
22 if (!attemptsRemaining) {
23 return console.error('Could not load FastComments - could not determine user information (email). Please reach out to FastComments support.');
24 }
25 console.warn('FastComments: No user email found - waiting and trying again.');
26 return setTimeout(tryLoad, attemptsRemaining < 5 ? 3000 : 100); // povećaj vreme čekanja nakon 5 pokušaja u slučaju sporog interneta.
27 }
28 if (profileLink) {
29 // koristi raw "img" query incase ThriveCart changes image class selector.
30 const avatarImg = profileLink.querySelector('img');
31 if (avatarImg && avatarImg.src) {
32 isAuthenticated = true;
33 simpleSSO.avatar = avatarImg.src;
34 }
35 // koristi innerText incase ThriveCart changes how profile name is displayed.
36 if (profileLink.innerText) {
37 isAuthenticated = true;
38 simpleSSO.username = profileLink.innerText;
39 } else {
40 const bold = profileLink.querySelector('b');
41 if (bold && bold.innerText) {
42 isAuthenticated = true;
43 simpleSSO.username = bold.innerText;
44 }
45 }
46 } else {
47 if (!attemptsRemaining) {
48 return console.error('Could not load FastComments - could not determine user information (user name/avatar). Please reach out to FastComments support.');
49 }
50 console.warn('FastComments: No user profile info found - waiting and trying again.');
51 attemptsRemaining--;
52 return setTimeout(tryLoad, attemptsRemaining < 5 ? 3000 : 100); // povećaj vreme čekanja nakon 5 pokušaja u slučaju sporog interneta.
53 }
54
55 let url;
56 const selectedNavLink = document.querySelector('.tcc-browse-lesson.active a');
57
58 if (selectedNavLink) {
59 // ponekad TC koristi više linkova na istoj stranici, pa ih de-duplikujemo.
60 url = getPathnameFromUrl(selectedNavLink.href);
61 } else {
62 // trim marketing parameters and domain name
63 url = window.location.pathname;
64 }
65
66 if (url) {
67 url = url.replace('/starte-hier', '');
68 url = url.replace('/start-here', '');
69 }
70
71 FastCommentsUI(document.getElementById('fastcomments-widget'), {
72 tenantId: 'demo',
73 urlId: url,
74 simpleSSO: isAuthenticated ? simpleSSO : null
75 });
76 }
77
78 tryLoad();
79
80 function getPathnameFromUrl(url) {
81 try {
82 const parsedUrl = new URL(url);
83 // trim marketing parameters and domain name
84 return parsedUrl.pathname;
85 } catch (error) {
86 console.error("Invalid URL", url, error);
87 return window.location.pathname; // default to current, so at least it works sometimes
88 }
89 }
90
91 })();
92</script>
93

Sada ga nalepite u blok za kod levo u ThriveCart editoru. Trebalo bi da izgleda ovako:

Kod dodat
Kod dodat

To je to! Sada samo treba da objavimo:

Objavi
Objavi

To je to! Sada bi trebalo da vidite polje za komentare na vašem kursu kada pregledate, i stvarni korisnici će moći da ostavljaju komentare bez prijavljivanja ili ponovnog unošenja svog korisničkog imena/emaila.

Napomena za testiranje!

Ako imate onemogućen anonimni komentar, što je podrazumevano, nećete moći da ostavljate komentare u Preview režimu kao korisnik John Smith. Dobit ćete grešku pri autentifikaciji jer podrazumevani korisnik John Smith nema email. Ako želite da testirate, predlažemo da koristite kupon kod i prođete kroz svoj sajt kao pravi korisnik.

Uspešno Internal Link


Uspešno! Sada bi trebalo da vidite FastComments Comment Widget.

Uspešno!
Uspešno!

Čestitamo na podešavanju FastComments sa ThriveCart! Ako ste naišli na Domain Error, ili želite da naučite kako da prilagodite oblast komentara, nastavite čitati!


Prilagođavanje Internal Link


FastComments je dizajniran da se prilagodi vašem sajtu.

Ako želite da dodate prilagođeni stil, ili da podesite konfiguraciju, Pogledajte našu dokumentaciju o prilagođavanjima i konfiguraciji da saznate kako.