Fri Jan 21 2022
...
FastComments objavljuje renderiranje na strani poslužitelja
! Ovaj članak sadrži tehnički žargon
Što je novo
Od lansiranja početkom 2020., FastComments je isključivo koristio JavaScript za renderiranje widgeta za komentiranje.
Što ako vam kažemo da možete imati gotovo sve iste bitne funkcionalnosti, ali bez korištenja JS-a?
Gornja snimka zaslona prikazuje FastComments widget za komentiranje, bez JavaScripta. Možete pogledati ovu stranicu, bez JavaScripta, ovdje.
Kako to koristiti
Ako koristite WordPress, verzija 3.10.1 dodatka FastComments automatski dodaje podršku za SSR kao rezervu za vaše korisnike koji pregledavaju s onemogućenim JS-om.
Za prilagođene implementacije, preuzmite UI za nit komentara, jednostavno pozovite /ssr/comments za tu stranicu:
Gdje je $urlId url ili id stranice. Dokumentacija o ovome je ovdje.
Na primjer, s PHP-om možemo poslati iframe na stranicu koja renderira nit komentara unutar:
Također, možemo napraviti API poziv kako bismo dobili HTML za nit komentara i renderirali ili pohranili ga.
Potpuna dokumentacija je dostupna u SSR dokumentima na docs.fastcomments.com.
SSO
Budući da volimo akronime zvučne kao poduzeće, ne brinite, SSR podržava SSO. Primjer jedinstvenog prijavljivanja s SSR-om je ovdje.
Lokalizacija
SSR temeljen endpoint automatski lokalizira odgovor na temelju jezičnih zaglavlja koje preglednik šalje. Također može koristiti ista lokalizacijska zamjena kao JavaScript temeljen widget.
Zašto je ovo napravljeno
Jedna od glavnih pritužbi na usluge poput FastComments je ta da zahtijevaju JS. Već činimo naš widget za komentiranje što je moguće manjim i osiguravamo da ispunjavamo SLAs poziva našeg API-ja od < 20ms, ali mnoge manje zajednice neće odabrati takvo rješenje ako to znači dodavanje JS-a na svoju stranicu.
To također otvara priliku za korištenje renderirajućih motora koji nemaju pristup JavaScriptu.
Tehnologija
FastComments koristi svoj mali mikro okvir za renderiranje UI-a. Ovaj okvir koristi sličan pristup Reactu, osim što su dozvoljene ručne dom manipulacije izvan inicijalnog renderiranja.
Osnovna biblioteka widgeta za komentare ima jedinu ulaznu točku - uzima skup stanja i stvara rezultate HTML-a i CSS-a koji se renderiraju. Ovo također jednostavno pozivamo na poslužitelju. Kada korisnik komunicira sa stranicom, stanje se mijenja i najnoviji HTML se preuzima. Ovo je napravljeno kao rezultat hackathona koji se održao na početku nove godine.
Živo komentiranje
Budući da se UI renderira s poslužitelja, jednom, značajke živog komentiranja trenutno nisu dostupne.
Osim toga, zvono za obavijesti trenutno nije dostupno. Otvoreni smo za dodavanje ove značajke u budućnosti.
Performanse
UI renderiran s poslužitelja koristi iste optimizacije pohrane i motor renderiranja kao i widget temeljen na JavaScriptu. Za male niti komentara, performanse su zapravo bolje, jer korisnik ne mora preuzeti skriptu koja zatim preuzima komentare i renderira UI.
Crawleri i SEO
FastComments već dobro funkcionira s web crawlerima; ako je SEO briga, korištenje SSR-a nije obavezno.
Buduće primjene
Planiramo lansiranje rješenja za forume u budućnosti. Tradicionalno, forumi su paginirani i renderirani s poslužitelja. Moderna rješenja foruma udaljavaju se od ove norme koristeći beskonačno pomicanje i renderiranje na klijentskoj strani. Ne mislimo da to mora biti jedina opcija za korištenje rješenja treće strane za forume.
Na kraju
Nadamo se da ste pronašli ovaj vodič korisnim i lako čitljivim. Slobodno komentirajte ispod s bilo kakvim pitanjima.
Pozdrav!
