百家号图文同步教程 PHP 代码示例

leixue 设计开发 2019-01-24 14:14:27 阅读(...) 评论(22)

昨天子凡发现百家号提供了开发者服务后,第一时间就在泪雪博客与大家做了分析,下午也一气呵成发布了 WordPress 百家号同步插件(Fanly Baijiahao),也已经在子凡的 WordPress 交流群免费分享给大家,那么也看到有网友留言不知道如何开发,说官方没有具体的代码示例,那么子凡今天就分享给大家一个 PHP 版的百家号同步代码示例。

百家号图文同步教程 PHP 代码示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//百家号图文同步代码(PHP)
$arrs = array(
	'app_id'		=> '',	//作者帐号 ID|熊掌 ID
	'app_token'		=> '',	//授权密钥
	'title'			=> '',	//文章标题,限定 8-40 个中英文字符以内
	'content'		=> '',	//正文内容,限制 20000 个中英文字符内,富文本
	'origin_url'	=> '',	//原文地址
	'cover_images'	=> array(	//文章封面图片地址 url, 0-3 张封面图,封面图尺寸不小于 218*146,没有封面图的内容将会进入草稿
		array('src' => ''),	//图一
		array('src' => ''),	//图二
		array('src' => ''),	//图三
	),
	'is_original'	=> '',	//标定是否原创,1 为原创,0 为非原创
);
$data = json_encode($arrs);//转为 json 格式
$api = 'http://baijiahao.baidu.com/builderinner/open/resource/article/publish';//百家号图文接口
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $api);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
echo $output;//返回结果为 json 格式数据
1
2
3
4
5
6
7
8
//同步成功返回数据示例
{
	errno:0,
	errmsg:'ok',
	data:{
		article_id:'1623435932006811682'
	}
}

直接上代码,其中已经将注释信息写得非常详细了,相信只要你有那么一丢丢的理解能力,同步点内容应该是不成问题,但是如果要想集成到你的网站程序上,就请你自己研究折腾了,以上的代码仅供学习和参考。

当然有必要说明的是,百家号同步不仅仅有图文同步接口,还有包括图集、视频等接口,所以示例代码仅为图文接口,其它接口的推送略有不同,依样画葫芦即可。

百家号开发文档:https://baijiahao.baidu.com/builder/author/openauth/openauthProtection

其它关于百家号开发接口及同步可以参考官方的开发文档,包括错误返回及错误代码说明查询,如果你同子凡一样使用 WordPress 建站,那么你可以去看看子凡开发的 WordPress 百家号同步插件,就有机会免费获取到啦。

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/baijiahao-builder-demo.html

发表评论

登录 后参与评论
  1. luffy
    1楼
    luffy 8个月前 (04-04)

    我这边总是提示60000020 百家号内部服务异常 也不知道什么鬼

    • 张子凡
      张子凡 8个月前 (04-07)
      回复 @luffy :感觉目前百家号方面不是特别稳定的样子,不过我居然没有遇到这样的问题,我也和他们产品经理反馈了,希望他们能够有所重视吧
      • luffy
        luffy 8个月前 (04-07)
        回复 @张子凡 :找了个朋友问了一下。。 是因为很多错误提示都归到了这个里。其实我的是标题少于10个字。
        • 张子凡
          张子凡 8个月前 (04-07)
          回复 @luffy :目前官方给出的文章标题是限定8-40个中英文字符以内,而且百度无法事实作出反馈提示,没有企鹅号的反馈做得好
  2. 哈哈哈
    2楼
    哈哈哈 9个月前 (03-19)

    百家号的接口还能用吗?我现在提交数据过去总是{“data”:[],”errno”:2,”errmsg”:”param error”},数据格式都是按照你的写的。图片大小合适,都是字符串,原创是int0,也不知道错到哪了。

    • 张子凡
      张子凡 9个月前 (03-20)
      回复 @哈哈哈 :还能用,不过最近两天我没有测试
      • diamond0422
        diamond0422 6个月前 (06-10)
        回复 @张子凡 :我这也提示这个了,{"data":{"params":"content"},"errno":2,"errmsg":"param error"},它说的是啥参数错误啊,{"params":"content"}这意思是说content参数错了吗,我的内容就测试了一行字,迷糊,不知道啥参数错了……
        • 张子凡
          张子凡 6个月前 (06-11)
          回复 @diamond0422 :参数错误就是提交过去的任何一个参数都有可能出问题,建议排查一下提交参数的类型,以及是否为必填项被忽略了
      • diamond0422
        diamond0422 6个月前 (06-10)
        回复 @张子凡 :问完就发现原因了,我cover_images参数不是字符串,改完成功了=_=!
        • 张子凡
          张子凡 6个月前 (06-11)
          回复 @diamond0422 :恭喜恭喜啦,你又离给百度做嫁衣又近了一步,哈哈哈
  3. fengxing
    3楼
    fengxing 10个月前 (01-29)

    使用接口可以发布百家号活动相关的稿件吗?就是参与活动的稿件可以用API接口同步吗?

  4. 明月登楼
    4楼
    明月登楼 10个月前 (01-27)

    同步插件支持视频和图集的自动同步吗?

  5. wordpress建站
    5楼
    wordpress建站 10个月前 (01-26)

    百家号被封号了,哎 没法解封啊

    • 张子凡
      张子凡 10个月前 (01-28)
      回复 @wordpress建站 :超过申诉周期就没法了,节哀啊,我也深有体会
  6. 鸟叔
    6楼
    鸟叔 10个月前 (01-26)

    又做出新插件了,厉害~~

    • 张子凡
      张子凡 10个月前 (01-28)
      回复 @鸟叔 :哈哈哈,我刚好需要,所以刚刚可以又发布一个新产品。
  7. 大熊
    7楼
    大熊 10个月前 (01-26)

    网站内容同步到百家号?那网站的排名,岂不是受影响?

    • 张子凡
      张子凡 10个月前 (01-28)
      回复 @大熊 :这是自然的事情,同样的内容,百家号的排名会把你网站的排名挤掉的,所以如果网站内容想要变现或者趁热点的文章,同步至百家号还是一个客观的操作。