スポンサーリンク
以前、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いいね数が急に表示されなくなった!という方はぜひともお試し下さいませ。
ご観覧ありがとうございました!
スポンサーリンク
