準備|ボタンの中にカウントを設置する方法
|1. jQuery-snsbuttonプラグインで取得したデザインボタン
|2. jQuery.socialbuttonプラグインで取得した公式ボタン
|3. SNSサイトから取得した公式ボタン
ソーシャルボタンを設置する方法は、Webサイトを検索すると多数あります。このサイトは扱っている設置の方法はつぎのとおりです。
SNSサイト→ ボタンの種類↓ | Twitter | Facebook | LINE | Ggoogle | Hatena | Pocket | mixi | Tumblr | GREE | Pinterest |
公式ボタン jQuery.socialbuttonプラグイン (プラグイン機能名) | 1. △共有 (twitter) | 2. / 3. いいね!/シェア (facebook_share/ facebook_like) | 4. / 5. いいね!/ line it (linelike/ lineit) | 6. 共有 (google_plus1) | 7. 共有 (hatena) | 8. 共有 (pocket) | 9. チェック (mixi_check) | 10. / 11. △POST/ follow (tumblr_post/ tumblr_follow) | 12. 共有 (gree_sf) | 13. 保存 (pinterest) |
デザインボタン jQuery-snsbuttonプラグイン (プラグイン機能名) | 1. 共有 (twitterShare) | 2. 共有 (facebookShare) | 3. 共有 (lineIt) | 4. 共有 (googlePlus1) | 5. 共有 (hatenaBookmark) | 6. 共有 (pocketButton) | 7. チェック (mixiCheck) | 8. 共有 (tumblrShare) | 9. 共有 (greeSf) | 10. 共有 (pinterest) |
SNSサイト→ ボタンの種類↓ | Linkedin | feedly | Inoreader | RSS | Ameba | Skype | Evernote | LDR | goo blog | Buffer |
公式ボタン jQuery.socialbuttonプラグイン (プラグイン機能名) | 14. 共有 (linkedin) | 15. RSS (feedly_rss) | - | - | - | 16. 共有 (skype) | 17. 共有 (evernote) |
18. RSS (ldrbannar/ ldrpocket) | 19.共有 (buffer) |
|
デザインボタン jQuery-snsbuttonプラグイン (プラグイン機能名) | - | 11. RSS (feedlyRss) | 12. RSS (inoreaderRss) | 13. RSS (rssFeed) | 14. post (amebaBlog) | - | 15. 共有 (evernoteClip) |
16. RSS (idrRss) | 17. post (gooBlog) | |
△:クリックして起動したモーダルウインドウ上に設置したボタンは表示できない。起動元の親ページのボタンは表示できる。(公式ボタン) (javascriptがうまく動作しない) - :ここでは未対応 |
(注1)ここに表示されているカウントは、このページのものではなく、デモのためのサンプルページのカウント値です。 デザインボタン解説ページ≫
(注2)Google+ おおび LDRはサービス終了し、LinkedinはカウントAPIが廃止になりました。(2019年6月現在)
ソーシャルボタンカウント取得PHPの動作の構成は、下図のようになっています。ソーシャルボタンのカウントを取得する処理はPHPで行います。 ただし、ボタンを設置する処理はHTMLで作ることができます。
SNS公式サイトの公式ボタンを使いたい場合は、SNS公式サイトソーシャルボタンHTMLを取得しておきます。
また、デザインボタンを使いたい場合は、ボタン画像を準備しておきます(jQuery-snsbuttonプラグイン使用の場合)。
SNSサイト名 | Google+ | Hatena | Pinerest | Feedly | LDR LDR pocket |
Buffer | クリックで公式サイトにリンク |
jQueryファイルを、<head>タグ内にインクルードします(必須)。また、jQuery.socialbuttonプラグインを使用する時は、インクルードします。
<!-- jQuery --> <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> <!-- jQuery.socialbuttonプラグイン --> <script src="js/jquery-snsbutton-1.2.js"></script>
ソーシャルボタンカウント取得PHPをPHP動作環境サーバにアップロードします。
ソーシャルボタンカウント取得PHP起動関数javascriptを<head>タグ内に定義します。 ソーシャルボタンカウント取得PHP起動関数javascriptについて、アップロード先の「ソーシャルボタンカウント取得PHP のURL」を設定します(下ソースコード赤字のURL部分)。
<script> // jquery 1.8以上 function buttoncountSet(site,target,url){ var shareurl; if(url == "" || url === undefined || url == null ){ shareurl = document.URL; } else{ shareurl = url; // ボタン設置ページのURL } var site = site; // SNS サイト名 例:facebook var phpurl = "http://urbanqee.com/webutil/sns/js/socialbutton-count.php"; // ソーシャルボタンカウント取得PHP URL (要修正) var pw = "H290707"; // パスワード $.ajax({ url: phpurl, // ソーシャルボタンカウント取得PHP dataType: "json", data: { url: shareurl, site: site, pass: pw }, }).done(function(data){ var res = data; $(target).text(res); var obj = $(target).parent("div"); //親要素OBJ取得、全子要素にFloat属性設定、Float属性解除設定(以下3ステップ) $(obj).children( "div" ).css({ "float": "left", "margin": "2px", "display": "block", "vertical-align": "middle", "cursor": "pointer" }); $(target).after("<div style='content: ; clear: both; display: block;'></div>"); }).fail(function(data){ var res = "error"; $(target).text(res); console.log(obj); }); } </script>
ボタンの中にカウントを設置する方法について、つぎの3つのソーシャルボタンについて説明します。
カウント Twitter
<div class="button-classname"></div>
<div id="count_idname" style="position: absolute; top: 25%; right: 0; color: #ffffff font-size: 12px;"></div>
※CSSで、position: absoluteとし、カウント値の表示位置(top,left,right,bottom)を指定します。また、その他大きさ(font-size)、色(color)などを適宜指定します。
右図のボタンDIV要素の大きさは、下の親要素のDIVタグで指定します。
ここの例では、width: 135px; height: 30px;になります。
指定のtop: 25%; right:0;により、カウント(カウントDIV要素)の表示位置は、ボタン(ボタンDIV要素)上の垂直・ほぼ中央(top: 25%;)の水平・右端(right:0;)になります。
下の例は、分かりやすくするためにカウントにボーダーを付けています。
<DIV style="position: relative; width: 135px; height: 30px; border: none;"> <div class="button-classname"></div> <div id="count_idname" style="position: absolute; top: 25%; right: 0; color: #ffffff font-size: 12px;"></div> </DIV>
※CSSで、position: relativeとし、DIV域の大きさすなわちボタンの大きさ(width,height)を指定します。
<script> $(function(){ $('.button-classname').snsbutton('twitterShare', { img: 'images/twitter-count.jpg', alt: 'このページの情報を カウント付きTwitter で共有する', width: '135', height: '30' }); }); <script>
※ jQueryプラグインsnsbuttonを、ボタン設置領域のCLASS名(例 .button-classname)およびサイト機能名(例 twitterShare)を指定して起動し、ボタンを設定します。
jQueryプラグインsnsbuttonのパラメータは、デザインボタン画像のURL(img)、ボタン画像の説明文(alt)、ボタン画像の大きさ(width, height)、ボタン設置ページのURL(url)などです。
サイトのプラグイン機能名については、上表1のデザインボタンの覧を参照
<script>buttoncountSet("twitter","#count_idname","http://jsoon.digitiminimi.com/");</script>
※ Javascript関数buttoncountSetを起動してカウントを取得します。
buttoncountSet関数のパラメータは、カウント取得サイト名、カウント設定領域のID名およびボタン設置ページのURLです。
下表に、カウント取得サイト名一覧を示します。
SNSサイト名 | Google+ | Hatena | Pinerest | Feedly | LDR LDR pocket |
Buffer | ←公式サイトにリンク | ||||
カウント取得PHP起動名 | faceboook | hatena | >pinerest | feedly | livedoor | buffer |
HTML/javascript/CSSコード - Twitterの例
<!-- HTML/CSS --> <DIV style="position: relative;width: 100px; height: 30px; border: none;"> <div class="button-twitter"></div> <!-- ボタン --> <div id="count_twitter" style="position: absolute; top: 25%; right: 0; color: #ffffff; padding: 1px; font-size: 12px; font-style:italic;"> <!-- カウント --> </div> </DIV> <!-- javascript カウント取得 --> <script>buttoncountSet("twitter","#count_twitter","http://jsoon.digitiminimi.com/");</script> <!-- javascript デザインボタン設置 --> <script> $(function(){ $('.button-twitter').snsbutton('twitterShare', { img: 'images/twitter-count.jpg', alt: 'このページの情報を カウント付きTwitter で共有する', width: '135', height: '30' }); }); <script>
<script> $(function(){ $('.button-twitter').snsbutton('twitterShare', { img: 'images/twitter-count.jpg', alt: 'このページの情報を カウント付きTwitter で共有する', width: '135', height: '30' }); }); <script>
<script>buttoncountSet("twitter","#count_twitter","http://jsoon.digitiminimi.com/");</script>
▼ a. HTML/Javascript/CSS
カウント Facebook
<div class="button-facebook"></div>
<div id="count_facebook" style="position: absolute; bottom: -3px; right:0; color: #ffffff font-size: 12px;"></div>
※CSSで、position: absoluteとし、カウント値の表示位置(top,left,right,bottom)を指定します。また、その他大きさ(font-size)、色(color)などを適宜指定します。
右図のボタンDIV要素の大きさは、下の親要素のDIVタグで指定します。
ここの例では width: 78px; height: 30px;;になります。
指定のbottom: -3px; right:0;により、カウント(カウントDIV要素)の表示位置は、ボタン(ボタンDIV要素)上の垂直・下端(bottom: -3px;)の水平・右端(right:0;)になります。
下の例は、分かりやすくするためにカウントにボーダーを付けています。
<DIV style="position: relative; width: 78px; height: 30px; border: none;"> <div class="button-facebook"></div> <div id="count_facebook" style="position: absolute; bottom: -3px; right:0; color: #ffffff font-size: 12px;"></div> </DIV>
※CSSで、position: relativeとし、DIV域の大きさすなわちボタンの大きさ(width,height)を指定します。
<script> $(function() { $('.button-facebook').socialbutton('facebook_share', { button: 'button',size: 'large' }); }); <script>
※ jQueryプラグインsocialbuttonを、ボタン設置領域のCLASS名(例 .button-facebook)およびサイト機能名(例 facebook_share)を指定して起動し、ボタンを設定します。
jQueryプラグインsnsbuttonのパラメータは、デザインボタン画像のURL(img)、ボタン画像の説明文(alt)、ボタン画像の大きさ(width, height)、ボタン設置ページのURL(url)などです。
サイトのプラグイン機能名については、上表1の公式ボタンの覧を参照
<script>buttoncountSet("facebook","#count_facebook","http://urbanqee.com/doga/dl-cur/youtube-video_downloader.php");</script>
※ Javascript関数buttoncountSetを起動してカウントを取得します。
buttoncountSet関数のパラメータは、カウント取得サイト名、カウント設定領域のID名およびボタン設置ページのURLです。
下表に、カウント取得サイト名一覧を示します。
SNSサイト名 | Google+ | Hatena | Pinerest | Feedly | LDR LDR pocket |
Buffer | ←公式サイトにリンク | ||||
カウント取得PHP起動名 | faceboook | hatena | >pinerest | feedly | livedoor | buffer |
カウント Hatena
<div> <a href="http://b.hatena.ne.jp/entry/" class="hatena-bookmark-button" data-hatena-bookmark-layout="touch" title="このエントリーをはてなブックマークに追加"> <img src="https://b.st-hatena.com/images/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="60" height="60" style="border: none;" /> </a> </div>
SNSサイトの一覧を下に示します。
SNSサイト名 | Google+ | Hatena | Pinerest | Feedly | LDR LDR pocket |
Buffer | クリックで公式サイトにリンク |
<div id="count_hatena" style="position: absolute; top: -2px; right:50%; color: #ffffff font-size: 12px;"></div>
※CSSで、position: absoluteとし、カウント値の表示位置(top,left,right,bottom)を指定します。また、その他大きさ(font-size)、色(color)などを適宜指定します。
右図のボタンDIV要素の大きさは、下の親要素のDIVタグで指定します。
ここの例では、width: 60px; height: 60px;になります。
指定のtop: -2px; right:50%;により、カウント(カウントDIV要素)の表示位置は、ボタン(ボタンDIV要素)上の垂直・上端(top: -2px;)の水平・中央(right:50%;)になります。
下の例は、分かりやすくするためにカウントにボーダーを付けています。
<DIV style="position: relative;width: 60px; height: 60px; border: 1px solid #ffffff;"> <div> <a href="http://b.hatena.ne.jp/entry/" class="hatena-bookmark-button" data-hatena-bookmark-layout="touch" title="このエントリーをはてなブックマークに追加"><img src="https://b.st-hatena.com/images/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="60" height="60" style="border: none;" /></a> </div> <div id="count_hatena" style="position: absolute; top: -2px; right:50%; color: #ffffff;padding: 1px;font-size: 10px;font-style:italic;"> </div> </DIV>
※CSSで、position: relativeとし、DIV域の大きさすなわちボタンの大きさ(width,height)を指定します。
<script>buttoncountSet("hatena","#count_hatena","http://urbanqee.com/webutil/photo/shadowbox/photo-shadowbox.html");</script>
※ Javascript関数buttoncountSetを起動してカウントを取得します。
buttoncountSet関数のパラメータは、カウント取得サイト名、カウント設定領域のID名およびボタン設置ページのURLです。
下表に、カウント取得サイト名一覧を示します。
SNSサイト名 | Google+ | Hatena | Pinerest | Feedly | LDR LDR pocket |
Buffer | ←公式サイトにリンク | ||||
カウント取得PHP起動名 | faceboook | hatena | >pinerest | feedly | livedoor | buffer |
 ソーシャルボタン関連サイト内リンク