Facebookいいね数ランキングをつけてみた。
2015年3月9日(月)
サイドバーに人気投稿ランキング的な物をつけたかったので、まずはFacebookのいいね数ランキングを付けてみました。ファン数じゃなくていいね数のやつ。結構面倒そうだったのでプラグインに頼ってみましたが、プラグインが1種類しかみつからない…。逆に需要が無いんでしょうか(汗)。
WordPress Facebook Like Rankingプラグインを設定
上記URLからダウンロード、または管理画面のプラグインで「WordPress Facebook Like Ranking」を検索して追加。有効化して設定からWordPress Facebook Like Ranking、ランキング生成してみましたが、早速エラー。どうやら利用中のレンタルサーバーではfile_get_contentsが使えないようです。
調べたらphp.iniの設定変更で回避できるようですが、使用中のレンタルサーバーではphp.iniの編集も禁止。
さらに調べたところ、“file_get_contentsの使えないサーバーでは代わりにcURLで代用できます”とのことなので、対象phpファイル(wp-fb-like-ranking.php)の108行目付近、file_get_contentsをコメントアウトしてcURLで置き換えてみました。
[code]
// $result = file_get_contents ($xml);
//ここから修正
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$xml);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$result=curl_exec($ch);
curl_close($ch);
//ここまで修正
[/code]
ランキングを表示したい場所(今回はサイドバー)に、以下のようにコードを追加。この辺の設定については、公式ブログに載ってました。
(件数5件、50px・50pxのサムネイル付き、タイトル文字数25文字までの例)
[html]
<?php if (function_exists(‘get_like_ranking’)) get_like_ranking (5, true, array(50, 50), null, 25); ?>
[/html]
エラーも消えて設置出来ました♪
…と喜んだのも束の間、しばらくすると「いいねを押されている記事はまだありません」と表示が更新されている…。
あれこれやってみましたが、結局よーく見てみたらもう一カ所 file_get_contents が使われている部分があったので、こちらも同様に変更。エラーが出なかったので見逃してました…。
あとは出力されたコードに合わせてCSSを適当に追加。
[css]
/* facebook Ranking */
.wp-fb-like-ranking li {
margin-top:5px;
clear: both;
font-size:86%;
line-height:1.35;
}
.wp-fb-like-ranking-thumb{
float: left;
margin-right: 5px;
padding-bottom:15px;
}
.wp-fb-like-ranking-count{
color:#039;
font-size:86%;
}
[/css]
これで、今のところ消えずに表示されてますねw