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が指定された分類法の1つをサポートしていないというエラーを返しますcategory-まあ、すべての投稿にはカテゴリが必要なので、私のルビーは不正であると思います。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 に答える