通过以下的文章终于实现了WordPress文章自动同步到新浪微博了,而且还带有高大上的本站来源,需要注意的是里面的用户名和你的来源需要是同一个用户下才有效,否则就会显示为未通过审核。
博主创建博客初期一直在用多说社会化评论插件,第一是因为多说跨博客回复提醒功能,第二是自带了同步文章到社交平台;也就是本文中将要实现的功能。先来两张图片
不难看出两张图的区别:除了内容不同外,还有来自XXX ,即红框标注位置;图2为以前使用多说插件同步的效果,图1为实现本博客中功能后的效果。
目的(作用)
第一:为自己的博客网站引流量
第二:提升逼格,凸显自己博客高大上的气质;就是因为这一点,所以我们要自己实现功能,不用插件的原因。
思路
- 实现此功能,在新浪微博开发者中心申请权限,也就创建网站接入应用
- 修改WordPress后代代码,在发表文章时与新浪微博应用链接
申请权限并创建应用
申请开发者权限
使用你的新浪微博账号登陆微博开放平台,网址:http://open.weibo.com/
点击页面导航中[编辑开发者信息]或访问:http://open.weibo.com/developers/basicinfo ,根据页面表单内容填写信息,提交后等待新浪方审核。(下图是基本流程)
新浪审核一般需要1个工作左右。审核通过后就可以创建应用了
创建应用
点击 [我的应用]->创建应用 或 访问:http://open.weibo.com/apps/new?sort=app 创建应用,根据表单内容一步一步填写就好了,注意:第一步的应用名就是图1和图2中的来源名称。
补全应用信息之后,提交审核。这里的审核时间会长一些,具体多长时间忘了。
这段时间你就可以使用新浪的开放端口进行开发了,只是在审核通过之前,来源位置显示的是未审核应用字样,但不影响开发和使用;新浪微博有很多很多接口供开发者调用,有兴趣的朋友可以仔细研究研究,不过本文中主要介绍 “2/statuses/update”接口(开发文档:http://open.weibo.com/wiki/2/statuses/update)。
编写代码
根据开发文档(http://open.weibo.com/wiki/2/statuses/update)中的介绍,我们可以得知:
接口URL:https://api.weibo.com/2/statuses/repost.json
数据格式:JSON
请求方式:POST
请求参数:status(微博内容)、source(AppKey,从开发者中心我的应用中获得;图3)
是否需要登陆:是
根据以上信息,我们编写的代码如下:
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);//给发布文章增加一个分享微博的动作
把代码红色部分替换成你对应的东西就行了。
小伙伴们,提升逼格,凸显网站的高大上气质,赶快动手吧。
文章来自:http://wuzhuti.cn/1771.html