記事末尾シェア型 SNS

通称:シェアボタンShare buttons at the end of an article

見本の中のメニューやボタンは押して動きを試せます(リンク先へは移動しません)。

本文が終わったところに、SNS へ送るボタンと URL のコピー用ボタンを置きます。読み終えて「人に教えたい」と思ったその場所に、送る手段を置く型です。

自分のサイトの中身で、この形を作らせる指示文です。最初の「サイトの情報」を書き換えてから渡します。今あるページを直させるときは、その HTML を貼ります。

この形で作る
# サイトの情報(ここを書き換える)
- どんなサイトか:〈例:工務店のサイト、税理士事務所のサイト、ネットショップ〉
- 入れたい文言・項目:〈見出し・ボタンの文言・項目の数など。決まっていなければ空けてよい〉
- 今あるページ:〈今のページを直すなら、その HTML を貼る。新しく作るなら空ける〉

# 部品の呼び名
一般に「シェアボタン」(Share buttons at the end of an article)と呼ばれる部品です。

# 作ってほしいもの
記事末尾シェア型のシェアボタン(Share buttons at the end of an article)。本文が終わったところに、SNS へ送るボタンと URL のコピー用ボタンを置く。

# 並べるもの
- 見出し:h2
- ボタンを4つ、ul で横一列に
- コピーの結果を出す場所:role="status" の p

# 守ってほしいこと
- SNS は3つまでに絞り、4つ目に URL のコピーを置く
- 各 SNS のボタンは a 要素にして、共有用の URL を JavaScript で組み立てて href に入れる
  - X:https://twitter.com/intent/tweet?url=…&text=…(text にページのタイトルを入れる)
  - Facebook:https://www.facebook.com/sharer/sharer.php?u=…
  - LINE:https://social-plugins.line.me/lineit/share?url=…
- 共有する URL は link rel="canonical" があればそれを、なければ location.href を使う
- 新しいタブで開き、rel="noopener" を付ける
- URL のコピーは button にし、navigator.clipboard が使えないときは textarea を使う方法に切り替える。結果を「URLをコピーしました」と出す
- ボタンは高さ 48px。各 SNS の色は使わず、薄い灰色の面と濃い文字でそろえる

# SP(画面幅 767px 以下)
- ボタンを 2列×2行 に並べる

# 出力
- HTML・CSS・JavaScript を分けて出す。ライブラリは使わない
- 色は CSS 変数(--accent など)にまとめ、あとから変えやすくする
- 文言は「サイトの情報」に合わせて考える。決まっていないところは〈 〉で囲んだ仮の文言にする
- 「並べるもの」に書いた項目の名前(エリア・間取りなど)は一例。サイトに合うものに置き換える
- 今あるページを渡したときは、そのページの色・文字・余白に合わせ、変えた場所を最後に箇条書きで知らせる

シェアボタン・フォローの案内・投稿の埋め込みを7つの型に分け、AIへの指示文・動く見本・コードを載せています。

SNSはどの型を選ぶか

サイトに SNS を置く目的は、大きく分けて3つです。記事を人に送ってもらう(シェア)、公式アカウントを知ってもらう(フォロー)、SNS の投稿をサイトでも見せる(埋め込み)。まず目的を1つ決めてから型を選びます。シェアの型は組み合わせて使うこともできます。

こんなとき 向いている型
読み物の記事を、読み終えた人に送ってほしい記事末尾シェア型
SNS よりも、社内のチャットやメールで回されることが多いURLコピーつき型
長い記事で、途中でも送れるようにしたい追従シェア型(記事末尾シェア型と組み合わせる)
読み手の多くがスマホで、ボタンを何個も置きたくない共有シート型
PC で見た人にスマホで読み返してほしい、店頭や説明会で案内したいQRコード併記型
公式アカウントのフォロワーを増やしたいフォロー導線型
写真の多い SNS の投稿を、サイトでも見せたい投稿の埋め込み型

記事末尾シェア型の並びに「共有する」ボタンを1個加え、共有シート型の働きを持たせることもできます。

どの型でも守ること

  1. 各 SNS が配る公式のスクリプトを、何本も読み込まない。シェアボタンはリンクで作れます。読み込みが減り、ページの表示も速くなります。
  2. 並べる SNS を絞る。読み手がよく使うものを2〜3個にします。押されないボタンが増えると、本命のボタンが埋もれます。
  3. ボタンの名前で、何が起きるかを伝える。絵柄しかないボタンは、aria-label に「Xでポスト」などの名前を入れます。
  4. ロゴを使うときは、各社の利用規定を読む。色や形を変えてはいけない決まりがあります。ここの見本では、ロゴの代わりに文字だけのボタンを使いました。
  5. 別のタブで開くリンクには rel="noopener" を付ける。

よくある質問 (FAQ)

SNS は2〜3個に、URL のコピーを1つ足した数が目安です。読み手がよく使う SNS は、サイトの分野や年代で変わります。アクセス解析で、どの SNS から来た人が多いかを見て決めます。

ページを開くたびに、各社のスクリプトを読み込むことになるからです。表示が遅くなるうえ、読み手の閲覧の情報が各社に送られます。各社が用意している共有用 URL に飛ぶ、ただのリンクにしておけば、通信が起きるのは押したときだけです。

スマホのブラウザの多くと、一部のパソコンのブラウザで使えます。使えるのは https のページで、ボタンを押したときだけです。使えない環境のために、URL をクリップボードへ写す代わりの動きを必ず入れておきます。

Instagram のビジネス用またはクリエイター用のアカウントと、Meta が出している API の利用の手続きが要ります。取得した投稿は自分のサーバーで受け取り、JSON にしてページへ渡します。アクセストークンはページの JavaScript に書かず、期限が切れる前に更新します。