使用python请看模块的使用方法https://python-wordpress-xmlrpc.readthedocs.io/en/latest/
安装
easy_install python-wordpress-xmlrpc 或者 pip install python-wordpress-xmlrpc
使用
#带有自定义列字段的发布文章代码#coding:utf-8from wordpress_xmlrpc import Client, WordPressPostfrom wordpress_xmlrpc.methods.posts import GetPosts, NewPostfrom wordpress_xmlrpc.methods.users import GetUserInfofrom wordpress_xmlrpc.methods import postsfrom wordpress_xmlrpc.methods import taxonomiesfrom wordpress_xmlrpc import WordPressTermfrom wordpress_xmlrpc.compat import xmlrpc_clientfrom wordpress_xmlrpc.methods import media, postsimport sysreload(sys)sys.setdefaultencoding('utf-8') wp = Client('http:///你的域名/xmlrpc.php', 后台账号, 后台密码 post = WordPressPost()post.title = 文章标题post.content = 文章内容post.post_status = 'publish' #文章状态,不写默认是草稿,private表示私密,draft表示草稿,publish表示发布 post.terms_names = { 'post_tag': ['test', 'firstpost'], #文章的标签是自动创建的 'category': ['Introductions', 'Tests'] #文章属于分类,没有自动创建 } post.custom_fields = [] #自定义字段列表post.custom_fields.append({ 添加自定义字段 'key': 'price', 'value': 3})post.custom_fields.append({ #添加第二个自定义字段 'key': 'ok', 'value': 天涯海角}post.id = wp.call(posts.NewPost(post))
##带有特色图像缩略图的发表文章#coding:utf-8from wordpress_xmlrpc import Client, WordPressPostfrom wordpress_xmlrpc.methods.posts import GetPosts, NewPostfrom wordpress_xmlrpc.methods.users import GetUserInfofrom wordpress_xmlrpc.methods import postsfrom wordpress_xmlrpc.methods import taxonomiesfrom wordpress_xmlrpc import WordPressTermfrom wordpress_xmlrpc.compat import xmlrpc_clientfrom wordpress_xmlrpc.methods import media, postsimport sysreload(sys)sys.setdefaultencoding('utf-8') wp = Client('http:///你的域名/xmlrpc.php', 后台账号, 后台密码 filename = './my.jpg' ##上传的图片文件路径 # prepare metadatadata = { 'name': 'picture.jpg', 'type': 'image/jpeg', # mimetype} # read the binary file and let the XMLRPC library encode it into base64with open(filename, 'rb') as img: data['bits'] = xmlrpc_client.Binary(img.read()) response = wp.call(media.UploadFile(data))# response == {# 'id': 6,# 'file': 'picture.jpg'# 'url': 'http://www.example.com/wp-content/uploads/2012/04/16/picture.jpg',# 'type': 'image/jpeg',# }attachment_id = response['id'] post = WordPressPost()post.title = 文章标题post.content = 文章正文post.post_status = 'publish' #文章状态,不写默认是草稿,private表示私密,draft表示草稿,publish表示发布post.terms_names = { 'post_tag': ['test', 'firstpost'], #文章的标签是自动创建的 'category': ['Introductions', 'Tests'] #文章属于分类,不自动创建 }post.thumbnail = attachment_id #缩略图的idpost.id = wp.call(posts.NewPost(post))
除了发表文章外,该模块还可以单独创建新的分类和标签#coding:utf-8from wordpress_xmlrpc import Client, WordPressPostfrom wordpress_xmlrpc import WordPressTermfrom wordpress_xmlrpc.methods import taxonomies import sysreload(sys)sys.setdefaultencoding('utf-8') wp = Client('http:///你的域名/xmlrpc.php', 后台账号, 后台密码 #新建标签tag = WordPressTerm()tag.taxonomy = 'post_tag'tag.name = 'My New Tag标签名称12'#tag.slug = 'bieming12#标签别名,可以忽略tag.id = wp.call(taxonomies.NewTerm(tag))#返回的id #新建分类cat = WordPressTerm()cat.taxonomy = 'category'cat.name = 'cat1'#分类名称cat.slug = 'bieming2'#分类别名,可以忽略cat.id = wp.call(taxonomies.NewTerm(cat))#新分类返回id #新建子分类parent_cat = client.call(taxonomies.GetTerm('category', 20)#20是父分类的id child_cat = WordPressTerm()child_cat.taxonomy = 'category'child_cat.parent = parent_cat.idchild_cat.name = 'My Child Category分类名称child_cat.slug = 'beidongdui#分类别名,可以忽略child_cat.id = wp.call(taxonomies.NewTerm(child_cat))#新分类返回id