Facebookいいね数ランキングをつけてみた。

2015年3月9日(月)

rankingサイドバーに人気投稿ランキング的な物をつけたかったので、まずは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で置き換えてみました。

  // $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);
  //ここまで修正

ランキングを表示したい場所(今回はサイドバー)に、以下のようにコードを追加。この辺の設定については、公式ブログに載ってました。
(件数5件、50px・50pxのサムネイル付き、タイトル文字数25文字までの例)

<?php if (function_exists('get_like_ranking')) get_like_ranking (5, true, array(50, 50), null, 25); ?>

エラーも消えて設置出来ました♪
…と喜んだのも束の間、しばらくすると「いいねを押されている記事はまだありません」と表示が更新されている…。

あれこれやってみましたが、結局よーく見てみたらもう一カ所 file_get_contents が使われている部分があったので、こちらも同様に変更。エラーが出なかったので見逃してました…。

あとは出力されたコードに合わせて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%;
}

これで、今のところ消えずに表示されてますねw

関連サイト

応用編。カスタム投稿で使う場合(内容は未確認)

このエントリーをはてなブックマークに追加

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このページのTOPへ戻る