AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Binom
 谷歌+Bing+TT+MSN官方代理 
⚡️按条S5代理⚡️静态⚡️独享⚡️5G⚡️最干净<Wifi住宅+5G移动>IP代理指纹浏览器,就用AdsPower
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利广告开户独立站⚡️开户投放
DuoPlus专注打造跨境电商云手机E.PN 虚拟卡BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具
MediaGo+Taboola+Ob开户百度国际MediaGo⚡️让产品狂奔全球百度国际,高点击转化,快速放量百度国际MediaGo,独家原生流量
ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款全球虚拟卡, 支持U充值
Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)FB 三不限源头 - 自助下户充值转款
各种主页、账单户、BM户(优势)⚡️个人户,bm户不限额,账单户一手BM分享户不限额9Proxy ⚡️ $0.04/IP, 无限带宽
FB二三解0.1元一个虚拟卡|PTM星际卡FB专用虚拟卡Google、Bing官方总代  联盟流量开户
FB账号资源/稳定靠谱/运行5年啦FB开户代投/三不限/白名单fb耐用号0.01一个fb账号官方合作商
广告位出租   
查看: 2949|回复: 10

[Wordpress] wordpress restful api 自动化发图文之环境配置

[复制链接]

14

主题

946

广告币

1230

积分

高级会员

Rank: 4

积分
1230
发表于 2022-7-20 09:22:00 | 显示全部楼层 |阅读模式
本帖最后由 邪恶的拖把 于 2022-7-20 09:32 编辑

1、 安装lamp,Nginx很难设置,使用Apache
2、安装完wordpress之后,点击控制面板上的Settings——》点击Permalinks——》选择 Postname
就像这样

3、配置SSL,只有https才可开启Application Password

4、点击控制面板上的Users——》点击Profile——》拉到最底  New Application Password Name框框中随便输入名字然后点击 Add New Application Password  ,就像下面这样,记得保存密码,此密码不可二次查看

5、到网站根目录/www/wwwroot/www.yourwebsite.com ,有一个.htaccess文件, 用vi加入下面这句话
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

6、查看Apache配置文件/www/server/apache/conf/httpd.conf 搜索AllowOverride None, 改成AllowOverride All,正常情况下系统会自动配置好这一步。

7、测试一下, 浏览器输入https://www.yourwebsite.com/wp-json/wp/v2/posts ,正常工作会显示json

8、如果一切顺利的话,我们来尝试一下发布一篇文章吧

url = "https://yourwebsite.com/wp-json/wp/v2"
user = "your-username"
password = "your-application-password"
credentials = user + ':' + password
token = base64.b64encode(credentials.encode())
header = {'Authorization': 'Basic ' + token.decode('utf-8')}
post = {
'title'    : 'Hello World',
'status'   : 'publish',
'content'  : 'This is my first post created using rest API',
'categories': 5, // category ID
'featured_media': imageID,  #注意这个字段
}
responce = requests.post(url , headers=header, json=post)
print(responce.text)

由于我们要发布的是图文,而不是纯文字, featured_media 字段可以帮助我们添加图片, 必须先将图片上传至服务器,再返回图片ID, 将ID赋给featured_media 字段,但是由于此方法过于垃圾,文章中并不能显示图片,完全不能满足我们混合图文的需求,所以不再赘述细节。 我们可以选择这样操作:
直接将图片链接赋给 content字段,就像这样 "content": "<img src=\"http://www.yourwebsite.com/wp-content/uploads/2022/07/659d51c01abe598f4e51504535773d76.jpg\" />" 请注意它的写法,这样图片就会出现在我们的文章中了。
那我们怎么获得wordpress 媒体库中的图片链接呢?
media = {
    'file': open("D:/imagelib_cover_img/71341cefbdef373b2a5ae03960215b61.jpg", 'rb'),
}

image = requests.post(url + '/media', headers=headers, files=media)
print(str(json.loads(image.content)['link']))
先上传张图片,再返回图片的link,还有很多字段可以查看,通过拼装字段就可以知道图片的地址。关于更多字段可以参考:
https://developer.wordpress.org/rest-api/reference/posts/

最后如果post方法出现401错误,不妨将Application password 更换一下,再做尝试。










本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

参与人数 1广告币 +1 收起 理由
妖妖 + 1 大吉大利

查看全部评分

相关帖子
回复

使用道具 举报

14

主题

946

广告币

1230

积分

高级会员

Rank: 4

积分
1230
 楼主| 发表于 2022-7-20 09:27:19 | 显示全部楼层
出现401错误 可能是权限问题或者用户名密码错误
404错误是请求的连接写错了
出现错误多问谷老师
回复 支持 反对

使用道具 举报

3

主题

80

广告币

96

积分

初级会员

Rank: 2

积分
96
发表于 2022-7-20 15:16:02 | 显示全部楼层
大佬这个不错,昨天刚使用了wordpress的xmlrpc来进行入库。早点知道有这个restful api 就用这个了。
回复 支持 反对

使用道具 举报

144

主题

2343

广告币

3974

积分

金牌会员

Rank: 6Rank: 6

积分
3974
发表于 2022-7-20 15:24:53 | 显示全部楼层
如果文章数量是十万级的,速度会怎么样?

点评

十万不多啊  详情 回复 发表于 2022-7-21 11:36
建议使用 sql 入库,速度比 api 快多了  详情 回复 发表于 2022-7-21 08:43
回复 支持 反对

使用道具 举报

33

主题

1406

广告币

1542

积分

高级会员

Rank: 4

积分
1542
发表于 2022-7-21 08:43:54 | 显示全部楼层
newcb 发表于 2022-7-20 15:24
如果文章数量是十万级的,速度会怎么样?

建议使用 sql 入库,速度比  api 快多了

点评

sql 不是麻烦嘛  详情 回复 发表于 2022-7-21 11:37
学无止境~
回复 支持 反对

使用道具 举报

14

主题

946

广告币

1230

积分

高级会员

Rank: 4

积分
1230
 楼主| 发表于 2022-7-21 11:36:22 | 显示全部楼层
newcb 发表于 2022-7-20 15:24
如果文章数量是十万级的,速度会怎么样?

十万不多啊
回复 支持 反对

使用道具 举报

14

主题

946

广告币

1230

积分

高级会员

Rank: 4

积分
1230
 楼主| 发表于 2022-7-21 11:37:15 | 显示全部楼层
billwong 发表于 2022-7-21 08:43
建议使用 sql 入库,速度比  api 快多了

sql 不是麻烦嘛
回复 支持 反对

使用道具 举报

94

主题

2081

广告币

2960

积分

高级会员

Rank: 4

积分
2960

社区QQ达人

发表于 2022-7-24 14:04:56 | 显示全部楼层
采集后 wp 推送?
如果针对采集,预处理图片路径直接上传文件夹,量大sql入库最快,发布日期预设就自动有新文章了,一次搞定。
回复 支持 反对

使用道具 举报

144

主题

2343

广告币

3974

积分

金牌会员

Rank: 6Rank: 6

积分
3974
发表于 2023-1-16 19:59:14 | 显示全部楼层
这个是什么语言啊,PHP吗?

点评

大蟒蛇 python  详情 回复 发表于 2023-1-16 21:16
回复 支持 反对

使用道具 举报

14

主题

946

广告币

1230

积分

高级会员

Rank: 4

积分
1230
 楼主| 发表于 2023-1-16 21:16:29 | 显示全部楼层
newcb 发表于 2023-1-16 19:59
这个是什么语言啊,PHP吗?

大蟒蛇 python
回复 支持 反对

使用道具 举报

6

主题

74

广告币

290

积分

初级会员

Rank: 2

积分
290
发表于 2023-1-16 22:37:31 | 显示全部楼层
有用,感谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们|联系我们|DMCA|广告服务|小黑屋|手机版|Archiver|Github|网站地图|AdvertCN

GMT+8, 2024-11-21 20:09 , Processed in 0.050736 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

快速回复 返回顶部 返回列表