0

这是我的电话:

 result = blog.call('wp.newPost',
                   1,
                   'user',
                   'pw',
                   { 
                     'post_type' => 'post', 
                     'post_content' => entry[3], 
                     'post_name' => entry[2].downcase.split(" ").join("-"),
                     'comment_status' => 'closed',
                     'pinged' => 'closed',
                     'post_status' => 'publish',
                     'post_title' => entry[2],
                     'terms' => ['category' => 9]
                   })

这将返回一个错误,即此帖子类型post不支持给定的分类法之一category- 好吧,每个帖子都应该有一个类别,所以我认为我的 ruby​​ 格式不正确。API 要求一个数组,其中分类法作为键,其 ID 作为值,我想我已经在这里完成了。

这适用于 v3.4 -这是 wp.newPost 上的文档

4

1 回答 1

1

有趣的是,以下代码有效:

    blogcontent = {
        :post_type => 'post',
        :post_content => entry[3],
        :post_name => entry[2].downcase.split(" ").join("-"), 
        :comment_status => 'closed', 
        :pinged => 'closed',
        :post_status => 'publish',
        :post_title => entry[2],
        :terms =>
            {
                :category => [9]
            }
  }

这将(通过 XMLRPC 编写器)转换为适当的 XML 并在 WordPress 中注册帖子。打开 XML-RPC 调试信息显示,除非变量9被括在括号中,否则不会传递结构,即使它是单值数组。

于 2012-08-13T18:23:01.293 回答