分享

写回答

发帖

[教程] [转载]教你怎样同步WordPress 博客日志到新浪微博

GoDaddy GoDaddy 3429 人阅读 | 1 人回复

发表于 2011-4-22 13:15:26 | 显示全部楼层 |阅读模式

当你在WORDPRESS博客上发表一篇文章,就会同时发送博客标题和博客文章地址到新浪微博,很给力的应用。

方法很简单的,

分为两步:

1:下面代码中,需要在相应的位置输入你的新浪微博帐号和密码。

2:把下面两段代码复制到主题的 functions.php 文件即可。

就这么简单,哈哈,马上开始吧。

========== 代码开始=====================

function update_sina_t($status){
    $username = "你的新浪微博的帐号";
    $password = "你的新浪微博的密码";
    $api_url = 'http://api.t.sina.com.cn/statuses/update.json';
    $body = array( 'status' => $status,'source'=>'2271475663');
    $headers = array( 'Authorization' => 'Basic '.base64_encode("$usernamepassword") );
    $request = new WP_Http;
    $result = $request->request( $api_url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers ) );
}

add_action('publish_post', 'publish_post_2_sina_t', 0);
function publish_post_2_sina_t($post_ID){
    $sina_t = get_post_meta($post_ID, 'sina_t', true);
    if($sina_t) return;
    $status = $_POST['post_title'].' '.get_permalink($post_ID);
    update_sina_t($status);
    add_post_meta($post_ID, 'sina_t', 'true', true);
}

========== 代码结束=====================

代码分析:
首先我们创建更新状态到新浪微博的函数,这里我用到了 WordPress 自带的 WP_Http 类;
然后 WordPress 日志发布之后的 hook 是 publish_post,我们可以在这个 action 执行的时候执行上面的函数,
从而同步 WordPress 博客日志到新浪微博
但是任何一次在 WordPress 后台点击更新日志都会触发这个 action,所以我们要用自定义字段记录是否已经把日志同步到了新浪微博:

哈哈,你的博客是不是很拉风啊?

http://hi.baidu.com/customers/blog/item/f5d4a80f387935f8aa645777.html

回答|共 1 个

lwbo1987

发表于 2011-4-22 13:21:29 | 显示全部楼层

楼主测试可以使用吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则