皆様
お世話になっております。
件名について、質問させていただきます。
とあるサーバから、phpのコマンドラインの実行で、
外部サーバにあるwordpressに対して、xmlrpc.phpを使って記事投稿をしています。
サーバ環境が変わる前はうまく動作していたのですが、以下、問題が発生しましたので、質問です。
■開発環境
一般的なLAMP環境
■確認できていること(試したこと)
1.サーバAからサーバBにあるwordpressへのxmlrpc.php経由での自動投稿
2.プログラム全体では動作していた(http通信で確認済み)
3.問題を切り分ける為に、サーバC(http通信)を用意して、自動投稿。結果OK。
4.サーバBのアカウントのパスワードにphp内での処理に影響しそうな記号類が使われていたので、簡易な文字列に変更。(結果NG)
■実現したいこと
サーバAからサーバBに対して、xmlrpc.phpを使って自動投稿を実現したい。
■補足
その他、考えられる原因として、サーバCを用意したのですが、そこは問題なく投稿できているので、あとはプロトコルの問題だけかと考えています。
以上になります。
同じような境遇にあった方や、有識者様のご意見をいただきたいと思います。
何卒どうぞよろしくお願い致します。
(追記)
実際の接続部分のソースコードを記載いたします。
抜粋になりますので、一部変数の部分はDBアクセス等した結果が入っています。
php
1 2//ライブラリ 3require_once("IXR_Library.php"); 4 5//初期設定 6$blog_url = 'https://xxxxxxxxxxxxxxxxxxxx/xmlrpc.php'; 7$user = 'aaaaaa'; 8$pass = 'bbbbbb'; 9 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' => 'publish', // 投稿状態(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 'post_tag' => $tag //タグ 28 ), 29 "custom_fields" => array( //カスタムフィールドを設定する 30 array("key" => "site_name", "value" => $rs_data["site_name"]), 31 array("key" => "image_url", "value" => $image_url_array["7"]), 32 ), 33 //'wp_post_thumbnail' => $img["id"] //アイキャッチを設定する 34 ) 35); 36 37//結果を取得 38$response = $client->getResponse(); 39$post_id = $response; 40
回答1件
あなたの回答
tips
プレビュー