スポンサーリンク
以前、wordpressでソーシャルボタンを自作して設置する方法をご紹介しました。
ところが、Facebook APIのシェア数取得の仕様変更により、いいね数が表示できなくなったようです。
他のソーシャル共有数は表示されているのにFacebook だけ表示されないのは、何か気持ちが悪いですね。
なので、Facebook APIの仕様変更に合わせ、PHPを利用していいいね数を表示できるようにしてしまいましょう。
まず、function.phpに以下のコードを追記します。
function fetch_facebook_count($url) { //URLをURLエンコード $encoded_url = rawurlencode( $url ); //Facebookにリクエストを送る $response = wp_remote_get( 'http://graph.facebook.com/?id='.$encoded_url ); $res = 0; //取得に成功した場合 if (!is_wp_error( $response ) && $response["response"]["code"] === 200) { $body = $response['body']; $json = json_decode( $body ); //ジェイソンオブジェクトに変換する $res = ($json->{'share'}->{'share_count'} ? $json->{'share'}->{'share_count'} : 0); } return $res; }
次に、sns.phpなどソーシャルボタン用のテンプレートファイル内のFacebookコードのカウント箇所に下記のコードを記載します。
<?php echo fetch_facebook_count(get_permalink()); ?>
これで完了です。
Facebookいいね数が復活しました!
function.phpとソーシャルボタン用のphpファイルにコードをコピペするだけなので、Facebookいいね数が急に表示されなくなった!という方はぜひともお試し下さいませ。
ご観覧ありがとうございました!
スポンサーリンク