您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
wordpress_xmlrpc的python包远程操作wordpress的方法
危眺沃2025-02-18WordPress教程已有人查阅
导读wordpress提供了丰富的xmlrpc接口api来供我们远程操控wp的内容。伟大的开源社区有人就将这些api做了一下封装,提供了一个功能比较完整的python库,这里我将自己试验的一些内容做一下总结。
wordpress提供了丰富的xmlrpc接口api来供我们远程操控wp的内容。伟大的开源社区有人就将这些api做了一下封装,提供了一个功能比较完整的python库,这里我将自己试验的一些内容做一下总结。
wordpress有一个revision的机制,导致我们在通过api接口更新文档时,会在数据库中保存2条记录,一条是正文,另外一条 id-revision之类的记录,对我来说没什么用,所以先通过代码禁用掉。
利用api可以获取指定的post的相关信息,具体有哪些信息可以参看下面新增post的那个表。一个简单的获取post列表的代码例子如下:
新建的post公国wordpress_xmlrpc.methods.posts.NewPost(WordPressPost)来创建,以下是一个简短的新建一个Post的代码段。
post.excerpt = "全英文界面,但有非官方的中文翻译"
date post_date_gmt
date_modified post_modified_gmt post的修改时间
slug post_name
post_status post_status post的状态, 可选draft、publish,常用publish就可以直接发布post了
titlepost标题
content post_content post 内容
excerpt post_excerpt 摘要
link
comment_status
ping_status
terms
terms_names
custom_fields
enclosure
post_format
thumbnail post_thumbnail
sticky置顶显示, 设置True
post_typepost的类型, 默认为post, 也可以为page,
parent_id post_parent 上级文章的id
menu_order
guid
mime_type post_mime_type
设置post的category和tag, Post的terms属性对应 WordPressTerm 对象。如果要新增一个term,可以用下面的代码来进行
编辑已经发布的Post,和新建基本上一样, 还是依赖于WordPressPost结构类
wordpress有一个revision的机制,导致我们在通过api接口更新文档时,会在数据库中保存2条记录,一条是正文,另外一条 id-revision之类的记录,对我来说没什么用,所以先通过代码禁用掉。
define('WP_POST_REVISIONS', false);
在这个python类库中,WordPressPost对象的属性通过setattr来实现的。查询Post利用api可以获取指定的post的相关信息,具体有哪些信息可以参看下面新增post的那个表。一个简单的获取post列表的代码例子如下:
def TestGetPost():
wp = wp_server.call(wordpress_xmlrpc.methods.posts.GetPosts())
for w in wp:
print w.title
print w.post_status
此外,GetPosts函数接受不同的参数来进行条件查询, 例如下面的的语句返回最近更新的100个post
recently_modified = client.call(posts.GetPosts({'orderby': 'post_modified', 'number': 100}))
下面的代码是返回从offset开始的指定条数的post条目:
posts = client.call(posts.GetPosts({'number': increment, 'offset': offset}))
新建Post新建的post公国wordpress_xmlrpc.methods.posts.NewPost(WordPressPost)来创建,以下是一个简短的新建一个Post的代码段。
post = WordPressPost()
post.title = "test4"
post.date_modified = datetime.datetime.now()
post.content = "全英文界面,但有非官方的中文翻译。推荐直接阅读英语原文,既准确可靠又可提高英语水平。做题方式模拟正式比赛,采用标准测评机、文件输入输出、直接提交程序源文件的测评方式。"post.excerpt = "全英文界面,但有非官方的中文翻译"
post.post_status = "publish"
print wp_server.call( wordpress_xmlrpc.methods.posts.NewPost(post))
插入时支持的参数有:python中字段 xmlrpc对应字段 含义date post_date_gmt
date_modified post_modified_gmt post的修改时间
slug post_name
post_status post_status post的状态, 可选draft、publish,常用publish就可以直接发布post了
titlepost标题
content post_content post 内容
excerpt post_excerpt 摘要
link
comment_status
ping_status
terms
terms_names
custom_fields
enclosure
post_format
thumbnail post_thumbnail
sticky置顶显示, 设置True
post_typepost的类型, 默认为post, 也可以为page,
parent_id post_parent 上级文章的id
menu_order
guid
mime_type post_mime_type
设置post的category和tag, Post的terms属性对应 WordPressTerm 对象。如果要新增一个term,可以用下面的代码来进行
post = WordPressPost()
post.title = 'Post with new tags'
post.content = '...'
post.terms_names = {
'post_tag': ['tagA', 'another tag'],
'category': ['My Child Category'],
}
post.id = client.call(posts.NewPost(post))
编辑Post编辑已经发布的Post,和新建基本上一样, 还是依赖于WordPressPost结构类
def TestModifyPost():
wp = wp_server.call(wordpress_xmlrpc.methods.posts.GetPost(1))
wp.sticky = True
print wp_server.call(wordpress_xmlrpc.methods.posts.EditPost(wp.id, wp))
上面的代码将postid是1的post进行置顶显示。
本文标签:
很赞哦! ()
相关教程
图文教程
不用wordpress插件显示文章浏览量的统计方法
如何不用wordpress插件显示文章浏览统计功能?wordpress无插件显示文章浏览数,附原理说明,网上关于这方面的文章很多了
Wordpress实现自定义ajax请求的方式示例
Wordpress实现ajax请求,分为两种情况:登录用户发起的ajax请求和未登录用户发起的ajax请求,通过ajax传递的数据中,action是一个固定字段,而且action字段所对应的值必须和hook名称中的后缀
Wordpress精简头部wp_head的方法
wp_head()是一个重要的函数,它允许插件开发者向你的站点动态地添加CSS和javascript,如果我们不在模板中引入这个,一个插件将不能工作。
WordPress函数body_class()用法介绍
wordpress的body_class()函数,顾名思义,这个函数根据不同的页面类型为body标签生成class选择器,从而让设计人员可以各方便灵活的控制不同页面中的各个元素。本文对这一函数进行
相关源码
-
帝国cms7.5文库范文/付费下载/复制付费/带支付源码免费下载本模板为文库、文档分享、知识付费类平台设计,提供完整的内容变现解决方案。系统支持多种内容展示与付费模式,满足不同场景下的内容价值转化需求,帮助平台实现内容资源的有效管理和商业化运营。查看源码 -
(PC+WAP)地暖热水器烘干机节能设备网站模板下载为地暖热水器及节能设备企业设计的PbootCMS网站模板,集成产品展示、节能方案介绍、技术参数说明等专业模块。采用PC与移动端同步响应架构查看源码 -
(自适应)大气办公用品耗材供应打印机产品维修网站模板下载基于PbootCMS系统开发的响应式网站模板,为营销技术博主、数字产品评测者设计。采用前沿的响应式技术,确保内容在手机端和桌面端都能获得较佳阅读体验,帮助用户高效展示技术文章和产品分析。查看源码 -
(响应式)企业管理人力资源服务类pbootcms模板源码下载为人力资源服务及企业管理设计的响应式网站模板,基于PbootCMS内核开发。通过宽屏布局优化岗位展示效果,简洁界面聚焦人才服务核心业务,自适应技术确保在PC端与手机端查看源码 -
(自适应)酒店民宿客房旅馆pbootcms模板下载基于PbootCMS内核开发的酒店民宿行业专用网站模板,专注于为住宿服务企业提供专业高效的在线展示平台。该模板采用响应式设计结构,确保在不同终端设备上均能呈现优质浏览体验。查看源码 -
(自适应响应式)电子数码科技产品介绍带留言网站模板下载为电子产品企业设计的展示系统,集成智能产品对比器、参数规格表和展示模块。支持消费电子、智能设备等多级分类展示,内置产品技术参数数据库。查看源码
| 分享笔记 (共有 篇笔记) |

