2

私は現在、300 以上の静的ページからデータをスクレイピングし、そのデータを WordPress サイトに転送するプロジェクトに取り組んでいます。Simple Fields ( http://simple-fields.com/ ) プラグインを使用してさまざまなカスタム フィールドを設定し、基本的な XML-RPC 接続が機能しています。以下は、カスタム投稿の挿入をテストするために使用しているものです (Ruby で記述):

connection = XMLRPC::Client.new_from_uri "http://localhost:8888/xmlrpc.php"
username   = "admin"
password   = "password"
test_post  = {
  :post_type   => "custom_property",
  :post_status => "draft",
  :post_title  => "test post!",
  :post_meta   => {
    :_simple_fields_fieldGroupID_1_fieldID_3_numInSet_0 => "test"
  }
}
puts connection.call("wp.newPost", 1, username, password, test_post)

:post_meta の代わりに :custom_fields を試しましたが、まだ役に立ちません。シンプル フィールドで作成したカスタム フィールドを更新できないようです。

何をすべきかについて何か提案があれば、それは大歓迎です。


編集: この問題は、この記事を使用して XML-RPC 関数を拡張することで解決されました: http://kovshenin.com/2010/custom-xml-rpc-methods-in-wordpress/

4

1 に答える 1

2

Wordpressの投稿の構造を理解するのは実際にはかなり難しいです。投稿するカスタムフィールドの場合は、次の形式を使用する必要があります。

'custom_fields' => [{'key' => 'something', 'value' => 'something else'}]

カスタム分類法の場合は、次を使用します。

'terms' => {
            'custom_type' => [value],
            'custom_something' => ['array_item','array_item']
        }

用語については、値が1つの項目であっても、常に値を配列に入れる必要があります。お役に立てば幸いです。

于 2013-02-25T23:14:47.233 に答える