TwitterシェアボタンをJavaScriptで実装しよう【Vanilla JS】
Webコーディング
2022.10.17
2024.02.10
現代のWebサイトには欠かせない「SNSシェア」。SNSの中でもTwitterは拡散力が大きく、WebサイトをTwitterにシェアしたい人はたくさんいます。
そこで、ページごとのURLやタイトルをTwitterにシェアするボタンの実装方法を紹介いたします。
TwitterのシェアURLの仕組み
基本的に、Twitterのシェアボタンはリクエストパラメータでツイートの内容を設定できます。
https://twitter.com/intent/tweet?text={ページタイトル}&url={ページのURL}&via={ツイート内に含むユーザ名}&related={ツイート後に表示されるユーザー}&hashtags={ハッシュタグ}
パラメータを全て付与する必要はないので、今回はページタイトルとページURLのみの実装とします。
https://twitter.com/intent/tweet?text={ページタイトル}&url={ページのURL}
aタグを用意
任意の場所にaタグを作ります。今回はindex.htmlに記述することとします。
<a href="http://twitter.com/" target="_blank" rel="noopener noreferrer">シェアする</a>
JavaScriptでaタグのhrefを変更する
JavaScriptではタイトルタグとURLを取得してそれをaタグのURLとします。
let pageTitle = document.querySelector('title').text;
let pageUrl = location.href;
let shareBtn = document.querySelector('a');
let shareURI = `https://twitter.com/intent/tweet?text=${pageTitle}&url=${pageUrl}`;
shareURI = encodeURI(shareURI);
console.log(pageTitle);
shareBtn.href = shareURI;
JavaScriptの処理として、
- titleタグのテキストを取得
- 現在のページURLを取得
- aタグのhref属性に取得したページタイトルとURLを追加
という形になります。
URLやタイトルをそのまま取得してhref属性に追加すると、リンク先がエラーになることが多々あるので、「encodeURI」関数を使用して日本語をデコードしてエラーの回避をしております。
ぜひ使ってみてください!