EDIT

オリジナルデザインのSNSシェアボタンを付ける

2023/09/06
SNSシェアボタン

【2020/10/25 追記】

  • Pinterest ボタンのコードを追加しました。
  • リンクコピーボタンも Font Awesome アイコンにしました。
  • 角型デザインボタンのCSSは削除しました。

【2021/05/10 追記】

  • JavaScript 化した改造版コードを公開しました。宜しければこちらもお試しください。
ファビコンふじろじっく
サムネイル
オリジナル SNS シェアボタン 【JavaScript 版】(2021/05/14: コードをアップデートしました)
ふじろじっくオリジナルSNSボタンのコードをJavaScript化してみた
https://fujilogic.blogspot.com/2021/05/SNS-share-buttons-JavaScript.html


スクリプトコードの設置

テーマ編集は必ず予めバックアップを取ってから行って下さい。

スクショは Contempo テーマのものを貼っています。

①Font Awesome アイコン準備

Font Awesome (ver.5x)のアイコンを使用するため、まだ導入されてない場合はテーマ編集画面(HTML)にて以下のタグを </head> の上に設置してください。

<link href='//use.fontawesome.com/releases/v5.14.0/css/all.css' rel='stylesheet' type='text/css'/>

②コードの設置

以下のHTMLコードを <data:post.body/> (2箇所あるうちの下側の方) の直下に設置するとシェアボタンが記事の下部(コメント欄の上辺り)に、上に置くと記事上部(記事タイトルの下辺り)に表示されます。

<!-- SNS Share Buttons -->
           <b:if cond='data:view.isPost'>
<div class='sns-share-buttons-title'>この記事をシェアする</div>
   <ul class='sns-share-buttons'>
      <!--Twitter-->
      <li class='tweet'>
          <a expr:href='"https://twitter.com/intent/tweet?url=" + data:post.url + "&amp;text=" + data:post.title + " %7C " + data:blog.title + ""' rel='nofollow noopener' target='_blank' title='ツイートする'>
            <i class='fab fa-twitter'/>
         </a>
      </li>
      <!--Facebook-->
      <li class='facebook'>
         <a expr:href='"http://www.facebook.com/sharer.php?u=" + data:post.url' onclick='javascript:window.open(this.href, &apos;&apos;, &apos;menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=330,width=600&apos;);return false;' rel='nofollow noopener' target='_blank' title='シェアする'>
           <i class='fab fa-facebook-f'/>
         </a>
      </li>
      <!--はてな-->
      <li class='hatena'>
         <a expr:href='"https://b.hatena.ne.jp/entry/panel/?url=" + data:post.url' onclick='javascript:window.open(this.href, &apos;&apos;, &apos;menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600&apos;);return false;' rel='nofollow noopener' target='_blank' title='はてなブックマークに登録'>
          <span style='font-weight:bold;font-family:verdana;line-height:22px'>B!</span>
         </a>
      </li>
      <!--pocket-->
      <li class='pocket'>
         <a expr:href='"https://getpocket.com/edit?url=" + data:post.url' onclick='javascript:window.open(this.href, &apos;&apos;, &apos;menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600&apos;);return false;' rel='nofollow noopener' target='_blank' title='Pocketに保存'>
           <i class='fab fa-get-pocket'/>
         </a>
      </li>
      <!--LINE-->
      <li class='line'>
         <a expr:href='"https://social-plugins.line.me/lineit/share?url=" + data:post.url' onclick='javascript:window.open(this.href, &apos;&apos;, &apos;menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=500,width=600&apos;);return false;' rel='nofollow noopener' target='_blank' title='LINEで送る'>
            <i class='fab fa-line'/>
         </a>
      </li>
      <!--Pinterest-->
      <li class='pinterest'>
         <a data-pin-custom='true' data-pin-do='buttonBookmark' data-pin-lang='ja' expr:href='&quot;https://jp.pinterest.com/pin/create/button/?url=&quot; + data:post.url + &quot;&amp;media=&quot; + data:post.thumbnailUrl' title='ピン保存する'><i class='fab fa-pinterest-p'/></a>
        <script async='async' defer='defer' src='//assets.pinterest.com/js/pinit.js'/>
      </li>
      <!--COPY LINK-->
      <li class='copylink'>
<a class='copy_btn' style='cursor:pointer' title='タイトルとURLをコピーする'/>
<script src='//ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js'/>
<script src='//cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js'/>
<script>
//<![CDATA[
const clipboard=new ClipboardJS(".copy_btn");window.addEventListener('DOMContentLoaded', function(){$(".copy_btn").click(function(){$(this).attr("data-clipboard-text",document.title+" "+location.href).css("cursor","text").css("cursor","text").css("line-height","12px").css("background","#ccc").css("transform","none").css("box-shadow","none").text("COPIED").attr("title","コピーしました")})})
//]]>
</script>
      </li>
   </ul>
</b:if>

<data:post.body/> の下に置いた場合

HTML

コードについて

  • リンクコピーには jQuery を使用しますが、既に導入済みの場合はタグを削除してもOKです。
  • リンクコピーのアイコンは Font Awesome を CSS疑似要素で表示しています。(コピー機能が効かなくなる不具合回避のため)
    コピーボタンを押した後はこのように変化します。→ コピーボタン

  • Vaster2, ZELO, QooQ 等、既にオリジナルのSNSボタンが実装されているテーマの場合は、当該の HTML や CSSコードを探して丸ごと入れ替えて下さい。

CSS でデザイン調整

以下のコードを、テーマ編集(HTML)にて ]]></b:skin> の上に追記します。

※テーマによってはアイコンの位置がずれたり、デザインが崩れる場合がありますので、適宜微調整して下さい。

.sns-share-buttons {
    width: 100%;
    margin: 1em 0;
    text-align: center;
    list-style: none;
    padding-left:0!important;
}
.sns-share-buttons li {
    display: inline-block;
    width: 43px;
    height: 43px;
    margin: 3px;
    padding: 0!important;
    border-radius: 25px;
    vertical-align: middle;
    line-height:1em;
}
.sns-share-buttons li a {
    font-size: 1.5em;
    display: block;
    padding-top: 10px;
    text-align: center;
    box-shadow: 2px 2px 8px -2px #aaa;
    text-decoration: none;
    color: #fff!important;
    border-radius: 25px;
    height: 33px;
    transition: .3s;
}
.sns-share-buttons li a:hover {
    text-decoration: none!important;
    transform: translateY(-3px);
    cursor: pointer;
}
.sns-share-buttons .tweet a {
    background: deepskyblue;
}
.sns-share-buttons .facebook a {
    background: royalblue;
}
.sns-share-buttons .hatena a {
    background: dodgerblue;
}
.sns-share-buttons .pocket a {
    background: coral;
}
.sns-share-buttons .line a {
    background: limegreen;
}
.sns-share-buttons .pinterest a {
    background: tomato;
}
.sns-share-buttons .pinterest a:hover {
    cursor: pointer;
}
.sns-share-buttons .copylink a {
    font-family: arial;
    background: plum;
    font-size: 8px;
    color: #333!important;
}
.copylink a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f0ea" "\A";
    font-weight: 900;
    font-size: 22px;
    line-height: 1em;
    color: #fff!important;
}
.sns-share-buttons-title {
    margin: 2em auto 1em;
    font-weight: bold;
    text-align: center;
}

2019/09/19 追記: QooQ 向けの設置手順記事を書きました。

QooQユーザーの方、よろしければご参考に。

ファビコンふじろじっく
サムネイル
【QooQ】オリジナルSNSシェアボタンの設置
オリジナル SNS シェアボタンの設置手順~QooQ編
https://fujilogic.blogspot.com/2019/09/original-snssharebutton-for-qooq.html

参考にさせて頂いた記事

基本的なコードで参考にさせていただいたこちらのブログ(アリスト戦記)は閉鎖されたそうです。

ファビコンクロージング
サムネイル
就職することになりました!!
関東圏で勤務中のシステムエンジニアのIT系ブログです。
https://blog.aristo-solutions.net/2021/03/blog-post.html

コピーボタンはこちらを参考にさせていただきました。

ファビコン影織文庫
サムネイル
コピペで使える!ブログ記事タイトルとリンクをワンタップでコピーするボタン実装
https://www.kageori.com/2018/05/blog-post_11.html