
์ธ์ด ๐ฐ๐ท ํ๊ตญ์ด
์ค์น
๋๊ธ ์ API
FastComments๋ ํน์ ํ์ด์ง๋ ๊ฒ์๋ฌผ์ ๋๊ธ ์๋ฅผ ํ์ํ ์ ์๋ ๊ฐ๋ณ๊ณ ๋ ๋ฆฝ์ ์ธ ๋๊ธ ์ ์์ ฏ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ์์ ฏ์ ๋ฉ์ธ ๋๊ธ ์์ ฏ๊ณผ ๋ถ๋ฆฌ๋์ด ์์ผ๋ฉฐ ์ ์ฒด ๋๊ธ ์ธํฐํ์ด์ค ์์ด ๋๊ธ ์๋ฅผ ํ์ํ๋ ค๋ ๊ณณ ์ด๋์๋ ์ฌ์ฉํ๋๋ก ์ค๊ณ๋์์ต๋๋ค.
์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ธ ์ ์์ ฏ์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค:
- Comment Count Widget - ๋จ์ผ ํ์ด์ง์ ๋๊ธ ์๋ฅผ ํ์ํ๊ธฐ ์ํด
- Bulk Comment Count Widget - ๋์ผํ ํ์ด์ง์์ ์ฌ๋ฌ ํ์ด์ง์ ๋๊ธ ์๋ฅผ ํจ์จ์ ์ผ๋ก ํ์ํ๊ธฐ ์ํด
์ด ๋ฌธ์์์๋ VanillaJS ์์ ฏ์ ๋ค๋ฃน๋๋ค. ๋น์ฌ์ React/Angular/etc ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋ ์์ฒด ์์ ฏ์ด ์์ต๋๋ค.
๋๊ธ ์ ์์ ฏ ์ค์น 
๋๊ธ ์ ์์ ฏ์ ๋จ์ผ ํ์ด์ง์ ๋๊ธ ์๋ฅผ ํ์ํ๋๋ก ์ค๊ณ๋์์ต๋๋ค. ๊ฐ๋ณ๊ณ ๊ตฌ์ฑํ๋ฉด ์ค์๊ฐ ์ ๋ฐ์ดํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ธฐ๋ณธ ์ค์น
Run 
๊ตฌ์ฑ ์ต์
FastCommentsCommentCount ํจ์๋ ๋ค์ ๊ตฌ์ฑ ์ต์
์ ํ์ฉํฉ๋๋ค:
- tenantId (ํ์): FastComments ํ ๋ํธ ID
- urlId (์ ํ์ฌํญ): ํ์ด์ง ์๋ณ์. ์ง์ ํ์ง ์์ผ๋ฉด
window.location.href๊ฐ ๊ธฐ๋ณธ๊ฐ - numberOnly (์ ํ์ฌํญ):
true์ด๋ฉด ํ ์คํธ ์์ด ์ซ์๋ง ํ์. ๊ธฐ๋ณธ๊ฐ์false - isLive (์ ํ์ฌํญ):
true์ด๋ฉด ์นด์ดํธ๊ฐ ์๋์ผ๋ก ์ ๋ฐ์ดํธ๋จ. ๊ธฐ๋ณธ๊ฐ์false
๊ณ ๊ธ ์์
์ฌ์ฉ์ ์ ์ URL ID
Run 
์ซ์๋ง ํ์
Run 
์ค์๊ฐ ์ ๋ฐ์ดํธ
Run 
์์ ฏ ๋ฉ์๋
์์ ฏ์ ๋ค์ ๋ฉ์๋๋ฅผ ๊ฐ์ง ๊ฐ์ฒด๋ฅผ ๋ฐํํฉ๋๋ค:
- destroy(): ์์ ฏ์ ์ ๊ฑฐํ๊ณ ๋ชจ๋ ํ์ด๋จธ๋ฅผ ์ ๋ฆฌ
- update(config): ์ ๊ตฌ์ฑ์ผ๋ก ์์ ฏ์ ์ ๋ฐ์ดํธ
์ฌ์ฉ ์์
Run 
์คํ์ผ๋ง
์์ ฏ์ ๋๊ธ ์๊ฐ ํฌํจ๋ ์ผ๋ฐ HTML์ ๋ ๋๋งํ๋ฉฐ ์ต์ํ์ ์คํ์ผ๋ง์ด ์ ๊ณต๋ฉ๋๋ค. CSS๋ก ์ธ๊ด์ ์ฌ์ฉ์ ์ ์ํ ์ ์์ต๋๋ค:
Run 
๋๊ธ ์ ์์ ฏ ์ผ๊ด ์ค์น 
๋ฒํฌ ๋๊ธ ์ ์์ ฏ์ ๋์ผํ ํ์ด์ง์์ ์ฌ๋ฌ ํ์ด์ง์ ๋๊ธ ์๋ฅผ ํจ์จ์ ์ผ๋ก ํ์ํ๋๋ก ์ค๊ณ๋์์ต๋๋ค. ๊ฐ ๋๊ธ ์์ ๋ํด ๊ฐ๋ณ API ํธ์ถ์ ํ๋ ๋์ , ์ด ์์ ฏ์ ์ต์ ์ ์ฑ๋ฅ์ ์ํด ์์ฒญ์ ์ผ๊ด ์ฒ๋ฆฌํฉ๋๋ค.
๊ธฐ๋ณธ ์ค์น
Run 
์๋ ๋ฐฉ์
๋ฒํฌ ์์ ฏ์ ๋ค์๊ณผ ๊ฐ์ด ์๋ํฉ๋๋ค:
fast-comments-countํด๋์ค๋ฅผ ๊ฐ์ง ์์๋ฅผ ํ์ด์ง์์ ์ค์บ- ๊ฐ ์์์์
data-fast-comments-url-id์์ฑ ์ฝ๊ธฐ - ์ฌ๋ฌ ๋๊ธ ์๋ฅผ ํจ์จ์ ์ผ๋ก ๊ฐ์ ธ์ค๊ธฐ ์ํด API ์์ฒญ ์ผ๊ด ์ฒ๋ฆฌ
- ๊ฐ ์์๋ฅผ ์ ์ ํ ๋๊ธ ์๋ก ์ ๋ฐ์ดํธ
๊ตฌ์ฑ ์ต์
FastCommentsCommentCountBulk ํจ์๋ ๋ค์ ๊ตฌ์ฑ ์ต์
์ ํ์ฉํฉ๋๋ค:
- tenantId (ํ์): FastComments ํ ๋ํธ ID
- apiHost (์ ํ์ฌํญ): ์์ฒด ํธ์คํ ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ฌ์ฉ์ ์ ์ API ํธ์คํธ
์ค์ ์์
๋ธ๋ก๊ทธ ๊ฒ์๋ฌผ ๋ชฉ๋ก์์ ๋ฒํฌ ์์ ฏ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ๋ ์ค์ฉ์ ์ธ ์์ :
Run 
์ฑ๋ฅ ๊ณ ๋ ค์ฌํญ
๋ฒํฌ ์์ ฏ์ ๋ค์์ ํตํด ์๋์ผ๋ก ์ฑ๋ฅ์ ์ต์ ํํฉ๋๋ค:
- ์์ฒญ ์ผ๊ด ์ฒ๋ฆฌ: ๋จ์ผ API ํธ์ถ๋ก ์ฌ๋ฌ ๋๊ธ ์๋ฅผ ๊ฐ์ ธ์ด
- ์์ฒญ ํฌ๊ธฐ ์ ํ: URL ๋ชฉ๋ก์ด ๋๋ฌด ๊ธธ์ด์ง๋ฉด(1,000์ ์ด๊ณผ) ์์ฒญ์ด ์๋์ผ๋ก ๋ถํ ๋จ
- ์ค๋ณต ์ ๊ฑฐ: ๋์ผํ
data-fast-comments-url-id๋ฅผ ๊ฐ์ง ์ฌ๋ฌ ์์๊ฐ ๋์ผํ ์๋ฅผ ๊ณต์
๋์ผํ URL ID๋ฅผ ๊ฐ์ง ์ฌ๋ฌ ์์
๋์ผํ data-fast-comments-url-id๋ฅผ ๊ฐ์ง ์ฌ๋ฌ ์์๋ฅผ ํ์ด์ง์ ๋ฐฐ์นํ ์ ์์ต๋๋ค. ๋ชจ๋ ๋์ผํ ์๋ก ์
๋ฐ์ดํธ๋ฉ๋๋ค:
Run 
๋ก์ปฌ๋ผ์ด์ ์ด์
๋ฒํฌ ์์ ฏ์ FastComments ์ธ์ด ์ค์ ์ ๋ฐ๋ผ ์๋์ผ๋ก ๋๊ธ ์๋ฅผ ํฌ๋งทํฉ๋๋ค. ๋ค์์ ๋ํ ์ ์ ํ ํ ์คํธ๋ฅผ ์ ๊ณตํฉ๋๋ค:
- ๋๊ธ ์์
- ๋๊ธ 1๊ฐ
- ์ฌ๋ฌ ๋๊ธ
๋ฒํฌ vs ์ฑ๊ธ ์์ ฏ ์ฌ์ฉ ์์
๋ฒํฌ ์์ ฏ ์ฌ์ฉ ์:
- ๋์ผํ ํ์ด์ง์ ์ฌ๋ฌ ๋๊ธ ์๊ฐ ์๋ ๊ฒฝ์ฐ
- ๋๊ธ ์๊ฐ ์๋ ๊ฒ์๋ฌผ/๊ธฐ์ฌ ๋ชฉ๋ก์ ํ์ํ๋ ๊ฒฝ์ฐ
- ์ฑ๋ฅ์ด ์ค์ํ ๊ฒฝ์ฐ (API ํธ์ถ ๊ฐ์)
์ฑ๊ธ ์์ ฏ ์ฌ์ฉ ์:
- ํ์ด์ง์ ๋๊ธ ์๊ฐ ํ๋๋ง ํ์ํ ๊ฒฝ์ฐ
- ์ค์๊ฐ ์ ๋ฐ์ดํธ๊ฐ ํ์ํ ๊ฒฝ์ฐ (์ฑ๊ธ ์์ ฏ์ ์ค์๊ฐ ์ ๋ฐ์ดํธ ์ง์)
- ๊ฐ๋ณ ์์ ฏ ๋์์ ๋ ์ธ๋ฐํ๊ฒ ์ ์ดํ๊ณ ์ถ์ ๊ฒฝ์ฐ
๋๊ธ ์ API 
์ํ๋ ๊ฒ๊ณผ ๋ธ๋ผ์ฐ์ , ์๋ฒ ๋๋ API SDK์์ ๊ฐ์ ธ์ค๋ ค๋์ง์ ๋ฐ๋ผ ์นด์ดํธ๋ฅผ ์ป๊ธฐ ์ํ ์ฌ๋ฌ ์๋ํฌ์ธํธ๊ฐ ์์ต๋๋ค.
๊ณต๊ฐ ๋๊ธ ์
์์ ์์ ฏ์ ์ฌ์ฉํ๊ฑฐ๋ ํด๋น ์์ ฏ์ด ์ฌ์ฉํ๋ API๋ฅผ ์ฌ์ฉํ์ฌ ๊ณต๊ฐ ๋๊ธ ์๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ด๋ฌํ API๋ 2019๋ ์ดํ ๋ณ๊ฒฝ๋์ง ์์์ผ๋ฉฐ ์์ผ๋ก๋ ๋ณ๊ฒฝ๋์ง ์์ ๊ฒ์ ๋๋ค.

๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๋ฐํํฉ๋๋ค:

postfix ์์ฑ์ ํญ์ ํฌํจ๋ฉ๋๋ค.

๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๋ฐํํฉ๋๋ค:

counts ๊ฐ์ฒด๋ ์นด์ดํธ๊ฐ ์๋ ํ์ด์ง์ ๋ํด์๋ง ์ฑ์์ง๋๋ค. translations ๋งต์ ์์ ฏ์ ์ฌ์ฉ๋๋ฏ๋ก ํญ์ ์กด์ฌํฉ๋๋ค.
๊ณต๊ฐ ์๋ํฌ์ธํธ ๋์ / ์บ์ฑ
๊ณต๊ฐ ์๋ํฌ์ธํธ์๋ ํธ๋ํฝ ๊ธ์ฆ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ 60์ด ์บ์ฑ ๋ฉ์ปค๋์ฆ์ด ์์ต๋๋ค. ๋ด๋ถ์ ์ผ๋ก ์ด๊ฒ์ ์๋ฒ ๋ฉ๋ชจ๋ฆฌ์ ์ค๋ ๋๋น LRU ์บ์์ด๋ฏ๋ก ์ฌ๋๋ค์ด ๋ง์ ๋๊ธ์ ๋จ๊ธธ ๋ ์นด์ดํธ๊ฐ ์ฝ๊ฐ ๋ณ๊ฒฝ๋๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค(์ฌ๋ผ๊ฐ๋ค๊ฐ ์ผ์์ ์ผ๋ก ๋ด๋ ค๊ฐ).
๊ณต๊ฐ ์๋ํฌ์ธํธ๋ ํญ์ ๋ฃจํธ ๋๊ธ ์๊ฐ ์๋ ์ด ๋๊ธ ์๋ฅผ ๋ฐํํฉ๋๋ค.
์๋ฒ ์ธก API / SDK
์๋ฒ์์ ๋๊ธ์ ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ Pages API๋ฅผ ํธ์ถํ์ฌ ์ด ๋๊ธ ์์ ๋ฃจํธ ๋๊ธ ์๊ฐ ํฌํจ๋ ํ์ด์ง ๊ฐ์ฒด๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์ ๋๋ค. API ์์ฒญ์ ์๋์ผ๋ก ๊ตฌ์ฑํ์ง ์๊ณ ๋ ์ด API๋ฅผ ํธ์ถํ ์ ์๋ SDK๋ฅผ ์ ๊ณตํ๋ฉฐ ํ์ ์ด ์ง์ ๋ ๋ฐํ ๊ฐ์ ์ ๊ณตํฉ๋๋ค.
FastComments ๋๊ธ ์ ์์ ฏ์ ์ฌ์ดํธ ์ ๋ฐ์ ๊ฑธ์ณ ๋๊ธ ์๋ฅผ ํ์ํ๋ ๊ฐ๋จํ๊ณ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค.
์ด ๋ฌธ์๊ฐ ๋์์ด ๋์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.