FastComments.com


FastCommentsはページごとに複数の種類のリアクションをサポートしています。私たちが「Page Reacts」と呼ぶもの(このページの下部でデモ)では、カスタマイズ可能な絵文字やアイコンをコメント領域の上に表示できます。

また、画面の右下に表示される「Floating Likes」ウィジェットもあります。本ドキュメントでは両方について説明します。


ページリアクション Internal Link


Page Reacts ウィジェットは、コメントウィジェット上にカスタマイズ可能なリアクションアイコンのセットを表示します。

ユーザーは画像をクリックしてリアクションでき、ページごとに選択したリアクションを記憶します。fastcomments.com にログインしている場合、これは彼らの アカウントに紐づきます。

下の例でRunをクリックすると、実際の動作を確認できます。


インストール - バニラJS Internal Link

For Page Reactsでは、次の2つを決める必要があります:

  • どのリアクション画像を使用するか。
  • 各リアクションの名前にする短い id

任意で:

  • 選択済み/未選択のリアクション用に、別々の画像を定義することもできます。
  • リアクションのいずれかにマウスを重ねたときに、リアクションしたユーザーの一覧を表示するかどうかを選択できます。
Page Reacts のコード例
Copy CopyRun External Link
1
2<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script>
3<div id="page-reacts-example"></div>
4<script>
5 window.FastCommentsUI(document.getElementById('page-reacts-example'), {
6 tenantId: 'demo',
7 pageReactConfig: {
8 showUsers: true,
9 reacts: [
10 {id: 'droll', src: 'https://docs.fastcomments.com/images/emojis/droll.png'},
11 {id: 'he', src: 'https://docs.fastcomments.com/images/emojis/heart-eyes.png'},
12 {id: 'laugh', src: 'https://docs.fastcomments.com/images/emojis/laugh.png'},
13 {id: 'puke', src: 'https://docs.fastcomments.com/images/emojis/puke.png', selectedSrc: 'https://docs.fastcomments.com/images/emojis/puke-bw.png' },
14 {id: 'rofl', src: 'https://docs.fastcomments.com/images/emojis/rofl.png' },
15 ]
16 }
17 });
18</script>
19

React、Angular などのフロントエンドライブラリ向けの設定も同じです。

フローティングいいねウィジェット Internal Link

フローティングいいねウィジェットは、画面の右下隅にいいね数とコメント数を表示するフローティングボックスを表示します。 このページで実際に確認できます!

ユーザーはハートをクリックしてページにいいねできます。いいねしたページは記憶されます。 彼らが fastcomments.com にログインしている場合、これは彼らの アカウントに紐づけられ、同じページに複数回いいねされるのを防ぎます。

また、ユーザーのブラウザのダークモード設定を自動検出し、必要に応じてスキンをダークバージョンに変更します。

インストール - バニラJS Internal Link

インストールは簡単です:

フローティングいいねのコード例
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo'
7 });
8</script>
9

コンストラクタの型シグネチャは次のとおりです:

構成
Copy Copy
1
2/**
3 *
4 * @param {HTMLElement} targetElement
5 * @param config
6 * @property {string} tenantId
7 * @property {string} urlId - ページ/記事の ID を設定するためにこれを変更してください。デフォルトではページの URL です。
8 * @property {() => void} [onOpenComments]
9 * @property {object} [sso]
10 * @constructor
11 */
12

これは認証のためにリアクション(いいね)をユーザーのアカウントに紐付けるためのSSOをサポートしています。

現在、VanillaJS のみがサポートされています。もしこのウィジェットを他のクライアントライブラリに追加してほしい場合は、お知らせください!

非同期版

フローティングいいねの非同期コード例
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js?v=2" async></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 (function () {
6 function tryLoad() {
7 if (window.FastCommentsEmbedPageLikesFloating) {
8 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
9 tenantId: 'demo'
10 });
11 } else {
12 setTimeout(tryLoad, 50);
13 }
14 }
15
16 tryLoad();
17 })();
18</script>
19

SSO を使う場合

Secure SSO または Simple SSO のペイロードも渡せます:

フローティングいいねのセキュアSSOコード例
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo',
7 sso // sso オブジェクトを渡す
8 });
9</script>
10
フローティングいいねのシンプルSSOコード例
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js"></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
6 tenantId: 'demo',
7 simpleSSO: {
8 id: 'some-user-id',
9 username: 'some username',
10 email: 'some@email.com',
11 }
12 });
13</script>
14

インストール - ワードプレス Internal Link

WordPressでは、この機能はWPCodeのようなプラグインをインストールし、次のHTMLスニペットをブログのフッターに追加することで有効にできます:

WordPress用フローティングいいねコード
Copy Copy
1
2<script src="https://cdn.fastcomments.com/js/embed-page-likes-floating.min.js" async></script>
3<div id="fastcomments-page-likes-floating"></div>
4<script>
5 (function () {
6 function tryLoad() {
7 if (window.FastCommentsEmbedPageLikesFloating) {
8 const articles = document.getElementsByTagName('article');
9 if (!articles.length) {
10 return console.warn('Article not found to show fastcomments likes.');
11 }
12 window.FastCommentsEmbedPageLikesFloating(document.getElementById('fastcomments-page-likes-floating'), {
13 tenantId: '-VuPDR12d-v_',
14 urlId: articles[0].id.replace('post-', '')
15 });
16 } else {
17 setTimeout(tryLoad, 50);
18 }
19 }
20
21 tryLoad();
22 })();
23</script>
24