FastComments.com

Add Members-Only Live Commenting to ghost Sites


FastComments๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Ghost๋กœ ๊ตฌ์ถ•๋œ ๋ชจ๋“  ์‚ฌ์ดํŠธ์— ๋ผ์ด๋ธŒ ํšŒ์› ์ „์šฉ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ์„ ์†์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ๋ฉค๋ฒ„์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ์•„๋ฐ”ํƒ€๋ฅผ ์ž๋™์œผ๋กœ ๊ฐ€์ ธ์˜ค๊ณ  ๋Œ“๊ธ€ ๋‹ต๊ธ€ ์•Œ๋ฆผ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ  ์ด ํŠœํ† ๋ฆฌ์–ผ์€ FastComments ๊ณ„์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ๊ฐ€์ž…ํ•œ ๋‹ค์Œ ์ด ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋Œ์•„์˜ค๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๊ณ„์ •์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŠœํ† ๋ฆฌ์–ผ์—์„œ๋Š” Ghost๋กœ ๊ตฌ์ถ•๋œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜์ง€๋งŒ, ์•ฝ๊ฐ„์˜ ๋…ธํ•˜์šฐ๊ฐ€ ์žˆ์œผ๋ฉด ๋™์ผํ•œ ์ง€์นจ์„ ๋ชจ๋“  ์œ ํ˜•์˜ ์‚ฌ์ดํŠธ์— ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŠœํ† ๋ฆฌ์–ผ์€ Ghost๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž์˜ ๊ด€์ ์—์„œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํ…Œ๋งˆ ํŽธ์ง‘์— ์ต์ˆ™ํ•œ ์‚ฌ์šฉ์ž๋Š” Step 4๋กœ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋‚ด๋ณด๋‚ธ ํ…Œ๋งˆ ํ…œํ”Œ๋ฆฟ์„ ์ง€์› ๋‹ด๋‹น์ž์—๊ฒŒ ๋ณด๋‚ด๋„ ๋ฉ๋‹ˆ๋‹ค(์—ฌ์ „ํžˆ ๋‹จ๊ณ„ 1 - 5๋Š” ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค).


1๋‹จ๊ณ„: ํ…Œ๋งˆ ๋‹ค์šด๋กœ๋“œ Internal Link

FastComments๋ฅผ Ghost์— ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ํ…Œ๋งˆ ํŒŒ์ผ์„ ํŽธ์ง‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋จผ์ € ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘์ด๊ฑฐ๋‚˜ ์›ํ•˜๋Š” ํ…Œ๋งˆ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์‚ฌ์ดํŠธ ๋Œ€์‹œ๋ณด๋“œ๋กœ ์ด๋™ํ•˜์—ฌ ์™ผ์ชฝ ์•„๋ž˜์˜ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜์„ธ์š”:

์„ค์ • ์—ด๊ธฐ
์„ค์ • ์—ด๊ธฐ

๋‹ค์Œ์œผ๋กœ Design ์˜ต์…˜์„ ์„ ํƒํ•˜์„ธ์š”:

๋””์ž์ธ ์„ ํƒ
๋””์ž์ธ ์„ ํƒ

๊ธฐ์ˆ ์ ์œผ๋กœ ํ…Œ๋งˆ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ, ์™ผ์ชฝ ์•„๋ž˜์˜ Change Theme๋ฅผ ํด๋ฆญํ•˜์„ธ์š”:

ํ…Œ๋งˆ ๋ณ€๊ฒฝ
ํ…Œ๋งˆ ๋ณ€๊ฒฝ

์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์—์„œ Advanced๋ฅผ ์„ ํƒํ•˜์„ธ์š”:

๊ณ ๊ธ‰ ์„ ํƒ
๊ณ ๊ธ‰ ์„ ํƒ

...๊ทธ๋Ÿฐ ๋‹ค์Œ ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘์ธ ํ…Œ๋งˆ ๋˜๋Š” ์›ํ•˜๋Š” ํ…Œ๋งˆ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์„ธ์š”:

ํ…Œ๋งˆ ๋‹ค์šด๋กœ๋“œ
ํ…Œ๋งˆ ๋‹ค์šด๋กœ๋“œ

2๋‹จ๊ณ„: ํ…Œ๋งˆ๋ฅผ ๋กœ์ปฌ์— ์„ค์น˜ Internal Link

์ด์ œ zip ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ–ˆ์œผ๋ฏ€๋กœ ํด๋”์— ์••์ถ•์„ ํ‘ธ์„ธ์š”. ๊ธฐ๋ณธ casper.zip์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ Windows์˜ Downloads\casper์— ์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์œผ๋กœ LTS ๋ฒ„์ „ ์ด์ƒ์˜ NodeJS๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. ๋‹ค์Œ์—์„œ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: https://nodejs.org/en/download/

NodeJS๊ฐ€ ์„ค์น˜๋˜๋ฉด ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์น˜ํ•˜์„ธ์š”.

์ถ”์ฒœ(๋ฐ ๋‹น์‚ฌ์—์„œ ์‚ฌ์šฉํ•˜๋Š”) ํŽธ์ง‘๊ธฐ๋Š” WebStorm์ด๋ฉฐ, 30์ผ ์ฒดํ—˜ํŒ(์‹ ์šฉ์นด๋“œ ๋ถˆํ•„์š”)์œผ๋กœ ์—ฌ๊ธฐ์—์„œ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: https://www.jetbrains.com/webstorm/

๋‹ค์Œ์œผ๋กœ ๊ฐ€์žฅ ์ข‹์€ ๋ฌด๋ฃŒ ์˜ต์…˜์€ ์•„๋งˆ Visual Studio Code์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค: https://code.visualstudio.com/download

ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์—๋””ํ„ฐ์—์„œ ํ…Œ๋งˆ ํด๋”๋ฅผ ์—ฐ ํ›„, IDE์—์„œ ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜์„ธ์š”:

ํ…Œ๋งˆ ์„ค์น˜
Copy Copy
1
2npm install
3

์„ฑ๊ณต์ ์ธ ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค(๊ฒฝ๊ณ ๋Š” ๋ฌด์‹œํ•˜์…”๋„ ๋ฉ๋‹ˆ๋‹ค):

npm ์„ค์น˜ ์„ฑ๊ณต ์ถœ๋ ฅ
npm ์„ค์น˜ ์„ฑ๊ณต ์ถœ๋ ฅ

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ดํ›„ ์‹คํ–‰ํ•  ๋ช…๋ น์„ ์œ„ํ•ด ํ…Œ๋งˆ์˜ ์˜์กด์„ฑ์ด ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, the export๋Š” ํ…Œ๋งˆ์˜ ์˜์กด์„ฑ์ด ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๋ฏ€๋กœ, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด the re-import๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

3๋‹จ๊ณ„: ์ƒˆ ํ…Œ๋งˆ ์ด๋ฆ„ ์ง€์ • Internal Link


ํ…Œ๋งˆ๋ฅผ ์—๋””ํ„ฐ์—์„œ ์—ฐ ์ƒํƒœ์—์„œ, package.json์„ ์—ด๊ณ  name ํ•„๋“œ๋ฅผ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•˜์„ธ์š”. ์—ฌ๊ธฐ์„œ๋Š” ๋์— -fastcomments๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค:

ํ…Œ๋งˆ ์ด๋ฆ„ ๋ฐ”๊พธ๊ธฐ
ํ…Œ๋งˆ ์ด๋ฆ„ ๋ฐ”๊พธ๊ธฐ

If you're using an IDE it will auto-save after you make this change.


4๋‹จ๊ณ„: ๊ฒŒ์‹œ๋ฌผ ํ…œํ”Œ๋ฆฟ ์—ด๊ธฐ Internal Link

์ด์ œ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ์— ์‚ฌ์šฉ๋˜๋Š” ํ…œํ”Œ๋ฆฟ์„ ์—ด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์€ post.hbs์ž…๋‹ˆ๋‹ค:

post.hbs ์—ด๊ธฐ
post.hbs ์—ด๊ธฐ

5๋‹จ๊ณ„: FastComments ์ฝ”๋“œ ์ถ”๊ฐ€ Internal Link

๋‹ค์Œ์œผ๋กœ FastComments.com ์œ„์ ฏ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•  ์œ„์น˜๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ casper ํ…Œ๋งˆ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, 82๋ฒˆ์งธ ์ค„์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„น์…˜์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

๋น„ํ™œ์„ฑํ™”๋œ ๋Œ“๊ธ€ ์„น์…˜
๋น„ํ™œ์„ฑํ™”๋œ ๋Œ“๊ธ€ ์„น์…˜

๋‹ค๋ฅธ ํ…Œ๋งˆ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์ด๋ฅผ ๋ณด์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋งˆ์ง€๋ง‰ </section> ํƒœ๊ทธ ๋‹ค์Œ์— ์ด ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

์„น์…˜ ์˜ˆ์ œ
Copy Copy
1
2<section class="article-comments gh-canvas">
3</section>
4

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ค€๋น„๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

๋Œ“๊ธ€ ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ ํ…œํ”Œ๋ฆฟ ์ค€๋น„๋จ
๋Œ“๊ธ€ ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ ํ…œํ”Œ๋ฆฟ ์ค€๋น„๋จ

์ค€๋น„๊ฐ€ ๋˜๋ฉด FastComments.com ์œ„์ ฏ ์ฝ”๋“œ๋ฅผ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค:

Ghost FastComments.com ๋Œ“๊ธ€ ์ฝ”๋“œ ์Šค๋‹ˆํŽซ
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 simpleSSO = null;
7
8 {{#if access}}
9 {{#if @member}}
10 simpleSSO = {
11 id: '{{ @member.uuid }}',
12 email: '{{@member.email}}',
13 username: '{{@member.name}}',
14 avatar: '{{ @member.avatar_image }}',
15 optedInNotifications: true,
16 optedInSubscriptionNotifications: true,
17 displayLabel: '{{@member.labels}}'
18 }
19 {{/if}}
20 {{/if}}
21
22 FastCommentsUI(document.getElementById('fastcomments-widget'), {
23 tenantId: "demo",
24 urlId: window.location.pathname,
25 allowAnon: false,
26 simpleSSO: simpleSSO
27 });
28 })();
29</script>
30

...๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค:

FastComments.com ๋Œ“๊ธ€ ์ฝ”๋“œ ์ถ”๊ฐ€
FastComments.com ๋Œ“๊ธ€ ์ฝ”๋“œ ์ถ”๊ฐ€

์ฝ”๋”ฉ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ํ…Œ๋งˆ๋ฅผ ๋‹ค์‹œ ๊ฐ€์ ธ์˜ค๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค!

6๋‹จ๊ณ„: ํ…Œ๋งˆ ๋‚ด๋ณด๋‚ด๊ธฐ Internal Link

์ด์ œ ํ…Œ๋งˆ ํŒŒ์ผ์„ ๋‹ค์‹œ ZIP ํŒŒ์ผ๋กœ ๋ฌถ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด Ghost์˜ ๋‚ด์žฅ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์„ธ์š”.

์—๋””ํ„ฐ์˜ ํ„ฐ๋ฏธ๋„์„ ๋‹ค์‹œ ์—ด๊ณ  npm run zip์„ ์‹คํ–‰ํ•˜์„ธ์š”.

ํ…Œ๋งˆ ๋‚ด๋ณด๋‚ด๊ธฐ
ํ…Œ๋งˆ ๋‚ด๋ณด๋‚ด๊ธฐ

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ…Œ๋งˆ๊ฐ€ dist/casper-fastcomments.zip์— zip ํŒŒ์ผ๋กœ ํŒจํ‚ค์ง•๋ฉ๋‹ˆ๋‹ค (ํ•ด๋‹น ํ…Œ๋งˆ ์ด๋ฆ„์„ Step Three์—์„œ ๊ทธ๋ ‡๊ฒŒ ์ง€์ •ํ–ˆ๋‹ค๋ฉด).

7๋‹จ๊ณ„: Ghost์— ํ…Œ๋งˆ ์—…๋กœ๋“œ Internal Link

๋‹ค์‹œ Ghost ๋Œ€์‹œ๋ณด๋“œ๋กœ ๋Œ์•„๊ฐ€์„œ ํ…Œ๋งˆ๋ฅผ ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค:

ํ…Œ๋งˆ ์—…๋กœ๋“œ
ํ…Œ๋งˆ ์—…๋กœ๋“œ

์ œ ๊ฒฝ์šฐ zip ํŒŒ์ผ์€ ๋‹ค์Œ ์œ„์น˜์— ์žˆ์Šต๋‹ˆ๋‹ค. dist ํด๋”๋ฅผ ํ™•์ธํ•˜์„ธ์š”:

์—…๋กœ๋“œํ•  Zip ์„ ํƒ
์—…๋กœ๋“œํ•  Zip ์„ ํƒ

์ƒˆ๋กœ ์—…๋กœ๋“œํ•œ ํ…Œ๋งˆ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š”(Ghost๊ฐ€ ์ด๋ฅผ ์š”์ฒญํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค).

์„ฑ๊ณต! Internal Link


์ด์ œ ์šฐ๋ฆฌ ๋ฉค๋ฒ„๋“ค์—๊ฒŒ FastComments ์‹ค์‹œ๊ฐ„ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์„ฑ๊ณต!
์„ฑ๊ณต!

Ghost์— FastComments๋ฅผ ์„ค์ •ํ•˜์‹  ๊ฒƒ์„ ์ถ•ํ•˜ํ•ฉ๋‹ˆ๋‹ค! ๋„๋ฉ”์ธ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ฑฐ๋‚˜ ๋Œ“๊ธ€ ์˜์—ญ์„ ์‚ฌ์šฉ์žํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด ๊ณ„์† ์ฝ์–ด๋ณด์„ธ์š”!


๋งž์ถค ์„ค์ • Internal Link


FastComments๋Š” ์‚ฌ์ดํŠธ์— ๋งž๊ฒŒ ๋งž์ถค ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ์ง€์ • ์Šคํƒ€์ผ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๊ตฌ์„ฑ์„ ์กฐ์ •ํ•˜๋ ค๋ฉด, ๋งž์ถค ์„ค์ • ๋ฌธ์„œ์—์„œ ๋ฐฉ๋ฒ•์„ ํ™•์ธํ•˜์„ธ์š”.