WordPressで各ソーシャルメディアでのいいね!数やシェア数が1以上の時のみ数字を表示する方法です。
こちらの記事を全面的に参考にさせていただきました。
Twitter、Facebook、Google+、はてブのソーシャルカウント数をWordPressで直接取得する関数まとめ
functions.phpに下記のソースコードを追加します。
//ツイート数の取得 function get_twitter_tweet_count($url){ $json = @file_get_contents('http://urls.api.twitter.com/1/urls/count.json?url='.rawurlencode($url)); $array = json_decode($json,true); if(!isset($array['count'])){ $count = ''; }else{ $count = $array['count']; } return $count; } //いいね!数の取得 function get_facebook_like_count($url){ $json = @file_get_contents('http://graph.facebook.com/?id='.rawurlencode($url)); $array = json_decode($json,true); if(!isset($array['shares'])){ $count = ''; }else{ $count = $array['shares']; } return $count; } //はてブ数の取得 function get_hatena_hatebu_count($url){ $count = @file_get_contents('http://api.b.st-hatena.com/entry.count?url='.rawurlencode($url)); if(!isset($count) || !$count){ $count = ''; } return $count; }
出力
Facebook <?php $facebook_like_count = get_facebook_like_count( get_the_permalink() ); if($facebook_like_count) : echo " $facebook_like_count"; endif; ?> Twitter <?php $twitter_tweet_count = get_twitter_tweet_count( get_the_permalink() ); if($twitter_tweet_count) : echo " $twitter_tweet_count"; endif; ?> はてなブックマーク <?php $hatena_hatebu_count = get_hatena_hatebu_count( get_the_permalink() ); if($hatena_hatebu_count) : echo " $hatena_hatebu_count"; endif; ?>