WordPress 記事一覧の取得と各URLの【いいね数】の取得方法 – PHPでURLにひもづくLIKE数を参照

この記事は4年前に書かれました。不適当な記述を含む場合がありますので、参考程度に留めてください。

どうもこんばんは。今回のtipsは【Wordpress 記事一覧の取得と各URLの【いいね数】の取得方法 – PHPでURLにひもづくLIKE数を参照】に関してです。意外に便利なので覚えておいても良いかと思います。

MySQLの記述

まずはMySQLを使って記事のURL,タイトル,日付を一覧で取得します。記述は以下のようになります。今回は使用していませんが一応月や日付も取得しています。不要な場合は削除していただいてかまいません。


SELECT ID, post_title AS title,
post_date AS date,
MONTH(post_date) AS month,
DAYOFMONTH(post_date) AS day,
post_name
FROM wp_posts
WHERE post_type = ‘post’
AND post_status = ‘publish’
ORDER BY date DESC
LIMIT 0,20

PHPの記述


<?php
$result = $wpdb->get_results(
"SELECT ID, post_title AS title,
post_date AS date,
MONTH(post_date) AS month,
DAYOFMONTH(post_date) AS day,
post_name
FROM wp_posts
WHERE post_type = ‘post’
AND post_status = ‘publish’
ORDER BY date DESC
LIMIT 0,20"
);
echo "<ul id=’like_list’>";
foreach ($result as $row) {
$uri = "http://zxcvbnmnbvcxz.com/";
$url = $uri.$row->post_name."/";
$fb_url = urlencode($url);
$get_facebook = ‘http://api.facebook.com/restserver.php?method=links.getStats&urls=’.$fb_url;
$xml = file_get_contents($get_facebook);
$xml = simplexml_load_string($xml);
$likes = $xml->link_stat->total_count;
echo "<li class=’cf’><span class=’like’>".$likes."</span><span class=’d’>".$row->month."/".$row->day."</span><a href=".$url.">".$row->title."</a></li>";
}
echo "</ul>";
?>

上の記述の中で、いいね数を取得しているのは以下の部分です。


$uri = "http://zxcvbnmnbvcxz.com/";
$url = $uri.$row->post_name."/";
$fb_url = urlencode($url);
$get_facebook = ‘http://api.facebook.com/restserver.php?method=links.getStats&urls=’.$fb_url;
$xml = file_get_contents($get_facebook);
$xml = simplexml_load_string($xml);
$likes = $xml->link_stat->total_count;

参照:Facebook の「いいね」を API で数える
 
以上になります。