皆様
お世話になっております。
今、wordpress4.x系に標準搭載されている「xmlrpc.php」を使って、
外部サーバのphpから、記事を投稿するプログラムを作っています。
ただ、その際にカスタムフィールドの値を設定した場合、
重複してカスタムフィールドが登録されてしまいます。
■環境
LAMP環境(php5.6)
■困っていること
xmlrpc.phpで投稿すると、カスタムフィールドが重複して登録される。
その他の項目については重複しない。
■実行したソース
php
1//初期設定 2$blog_url = 'http://hogehoge.fuga.com/xmlrpc.php'; 3$user = 'zzzzzzzzzzzz'; 4$pass = 'ppaasswwoorrdd'; 5 6//投稿内容 7$post_date = "2017-10-27 11:11:38"; 8$category = array("テストカテゴリ"); //カテゴリ 9$filename = "aaaaaa"; 10 11$client = new IXR_Client($blog_url); 12$status = $client->query( 13 "wp.newPost", //使用する API 14 1, //ブログID(通常は1) 15 $user, //ユーザー 16 $pass, //パスワード 17 array( 18 'post_author' => $user, //投稿者ID 19 'post_date' => $post_date, 20 'post_status' => 'draft', //投稿状態(publish:公開、draft:下書き) 21 'post_title' => $rs_data["title"], //タイトル 22 'comment_status' => 'open', //コメントを有効にするかどうか 23 'post_content' => "", //本文 24 'post_excerpt' => "", //抜粋 25 'terms_names' => array( 26 'category' => $category, //カテゴリ 27 ), 28 "custom_fields" => array( //カスタムフィールドを設定する 29 array("key" => "site_name", "value" => "サイトA"), 30 array("key" => "site_url", "value" => "http://url_a"), 31 array("key" => "filename", "value" => "aaaa.jpg"), 32 ), 33 ) 34); 35 36//結果を取得 37$response = $client->getResponse(); 38$post_id = $response;
■実行結果
カスタムフィールの「site_name」「site_url」「filename」がそれぞれ2件づつ登録されてしまう。
■備考
同じプログラムを、keyと値だけ変更し、
別ファイルのPHPとして実行すると、問題なく投稿された。
■解決したいこと
カスタムフィールドの重複登録をなくしたい。
以上になります。
皆様のお知恵を拝借いただけますでしょうか。
どうぞよろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー