我在我的网站上使用wp职位经理。当我尝试通过xmlrpc添加列表时,一切都很好,但是类别和位置为空。
我的代码如下。您能告诉我代码有什么问题吗? 谢谢
from wordpress_xmlrpc import Client, WordPressPost
from wordpress_xmlrpc.methods.posts import GetPosts
from wordpress_xmlrpc.methods import posts
from wordpress_xmlrpc import WordPressTerm
from wordpress_xmlrpc.methods import taxonomies
wp = Client('http://127.0.0.1/15wp/xmlrpc.php', 'admin', '123456')
# now let's create a new product
widget = WordPressPost()
widget.post_type = 'job_listing'
widget.title = 'Widgetlast02'
widget.content = 'This is the widgets description.'
widget.post_status = 'publish'
widget.custom_fields = []
widget.custom_fields.append({
'job_location': 'Newyork',
'job_listing_category': 'hotel'
})
widget.id = wp.call(posts.NewPost(widget))
答案 0 :(得分:0)
这只是看documentation for WordPressPost
in wordpress_xmlrpc
的猜测:
(强调我的)
WordPressPost类
代表的帖子,页面或其他已注册的自定义帖子类型 WordPress。
- id
- 用户
- 日期(日期时间)
- 修改日期(日期时间)
- sl
- post_status
- 标题
- 内容
- 摘录
- 链接
- comment_status
- ping_status
- 条款(WordPressTerms列表)
- terms_names(字典)
- custom_fields(字典)
- 附件(字典)
- 密码
- post_format
- 缩略图
- 粘性
- post_type
它期望custom_fields
是dict
-您要创建一个list
,然后在该列表中插入一个dict
:
widget.custom_fields = []
widget.custom_fields.append({
'job_location': 'Newyork',
'job_listing_category': 'hotel'
})
这可能会更好地工作:
widget.custom_fields = {
'job_location': 'Newyork',
'job_listing_category': 'hotel'
}
答案 1 :(得分:0)
custom_fields
属性需要字典列表。
在每个字典中,它期望key
和value
字段的值。
在这里,key
是自定义字段的名称,而value
是您要为其分配的值。
下面是您的特定示例的代码段。
widget.custom_fields = [
{
'key': 'job_location',
'value': 'Newyork'
},
{
'key': 'job_listing_category',
'value': 'hotel'
}
]