同步 WordPress 博客日志到 Follow5

Follow5 是一个以”我”为中心的分享与联络的平台,Follow5 的目标:让分享更简单、更随意、更轻松。作为一个标准的微博客,显然 Follow5 也支持 API,下面我讲解下如果使用 Follow5 的 API 同步 WordPress 博客日志到 Follow5:

Follow5 的 API 和 Twitter 不同,它需要一个 API Key,这个 API 可以需要去申请才能获得,其他基本操作一样。如果你不想申请,可以直接使用我下面代码中的 API Key

首先我们创建更新状态到 Follow5 的函数,这里我用到了 WordPress 自带的 WP_Http 类(关于 WP_HTTP 的介绍你可以查看这篇文章:如何在WordPress 发起HTTP Requests):


<?php
function update_follow5($status){    
    $username = '你 Follow5 的帐号'; 
    $password = '你 Follow5 的密码';
 
    $api_url = 'http://api.follow5.com/api/statuses/update.xml?api_key=6891F20C97944160F89FF8B2458DA2BE';
    
    $body = array( 'status' => $status, 'source' => 'FollowWP');
    $headers = array( 'Authorization' => 'Basic '.base64_encode("$username:$password") );
    $request = new WP_Http;    
    $result = $request->request( $api_url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers ) );
}
?>

上面代码中,需要在相应的位置输入你的 Follow5 帐号和密码。

然后 WordPress 日志发布之后的 hook 是 publish_post,但是任何一次在 WordPress 后台点击更新日志都会触发这个 action,所以我们要用自定义字段记录是否已经把日志同步到了 Follow5:


<?php
add_action('publish_post', 'publish_post_2_follow5', 0);
function publish_post_2_follow5($post_ID){
    $follow5 = get_post_meta($post_ID, 'follow5', true);
    if($follow5) return;
 
    $status = $_POST['post_title'].' '.get_permalink($post_ID);
    
    update_follow5($status);
    
    add_post_meta($post_ID, 'follow5', 'true', true);
}
?>

把上面两段代码复制到主题的 functions.php 文件即可。当然你也可以直接下载这个文件(wp-follow5.zip)上传到插件目录,然后激活。

热门文章