WordPress文章如何同步更新到新浪微博方法
新浪微博的流行程度很高,几乎人人每天都在刷微博,有事没事微博一下。如果能将自己网站的wordpress文章同步更新到新浪微博,就可以获取不少的社交媒体流量。目前也有插件能实现同步更新功能,比如多说评论框。但今天本文要介绍的是不用插件来实现Wordpress文章同步更新到新浪微博。
1、申请新浪微博应用接入
为了实现同步微博功能,首先你需要在新浪微博开发者中心申请权限,也就创建网站接入应用。使用你的新浪微博账号登陆微博开放平台:http://open.weibo.com/。点击页面导航中[编辑开发者信息]或访问:http://open.weibo.com/developers/basicinfo ,根据页面表单内容填写信息,提交后等待审核。新浪审核一般需要1个工作左右。审核通过后就可以创建应用了。然后在微博开放平台的首页点击橙色的[立即创建微连接]->[网站接入] 或 直接访问http://open.weibo.com/webmaster/add补全应用信息之后,提交审核。应用的审核时间会稍微久一些。这段时间你可以使用新浪的开放端口进行开发了,只是在审核通过之前,来源位置显示的是未审核应用字样,但不影响开发和使用。
2、Wordpress同步新浪微博代码
新浪微博有很多接口供开发者调用,而根据需求,我们只需了解更新发布接口即可。相关开发文档:http://open.weibo.com/wiki/2/statuses/update。根据开发文档介绍,我们可以获得以下接口信息:
接口URL:https://api.weibo.com/2/statuses/repost.json 数据格式:JSON 请求方式:POST 请求参数:status(微博内容)、source(AppKey,从开发者中心我的应用中获取) 是否需要登陆:是
根据以上微博接口信息,我们可以编写wordpress代码如下(appkey、username、userpassword需替换成你自己的):
/* 文章同步到新浪微博 代码来源: www.wpzxbj.com */ function post_to_sina_weibo($post_ID) { if (wp_is_post_revision($post_ID)) return;//修订版本(更新)不发微博 $get_post_info = get_post($post_ID); $get_post_centent = get_post($post_ID)->post_content; $get_post_title = get_post($post_ID)->post_title; if ($get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish') { $appkey='3838258703'; $username='微博用户名'; $userpassword='微博密码'; $request = new WP_Http; $status = '【' . strip_tags($get_post_title) . '】 ' . mb_strimwidth(strip_tags(apply_filters('the_content', $get_post_centent)) , 0, 132, '...') . ' 全文地址:' . get_permalink($post_ID); $api_url = 'https://api.weibo.com/2/statuses/update.json'; $body = array('status' => $status,'source' => $appkey); $headers = array('Authorization' => 'Basic ' . base64_encode("$username:$userpassword")); $result = $request->post($api_url, array('body' => $body,'headers' => $headers)); } } add_action('publish_post', 'post_to_sina_weibo', 0);//给发布文章增加一个分享微博的动作
将以上wordpress文章同步微博代码贴到你主题的function.php文件中即可。