我有这个脚本从Facebook Graph中提取facebook喜欢并将它们用作帖子的元值。它有效。问题是它只更新了5个最新帖子的元值,我无法弄清楚原因。
我做了什么:我试图在一个全新的Wordpress安装上安装脚本,没有插件,默认二十二个主题,localhost但问题仍然存在。
完整脚本: http://pastebin.com/f6LqgqQS
网站网址: http://wisefiction.com/recent
(可能加载缓慢,脚本现在在init上运行而不是wp_cron用于调试目的。如果您喜欢/不同于帖子并重新加载页面''我会看到fb_likes_count仅对前5个帖子进行了更改)
$args=array(
'post_type' => 'post',
'post_mime_type' => '',
'post_status' => 'publish'
);
$posts_array = get_posts( $args );
foreach($posts_array as $post):
$permalink = get_permalink($post->ID);
$idpost = $post->ID;
$data = file_get_contents('http://graph.facebook.com/?id='.$permalink);
$json = $data;
$obj = json_decode($json);
$like_no = $obj->{'shares'};
$meta_values = get_post_meta($idpost, 'fb_likes_count', true);
if($like_no == null){$like_no = 0;}
update_post_meta($idpost, 'fb_likes_count', $like_no, false);