XML-RPCを使ってWordPressへ投稿する方法はわかりました。
※「XML-RPCを使ってWordPressへ投稿する」参照
この方法だと、投稿されるカテゴリーはWordPressの管理画面で設定されているデフォルトのカテゴリーへの投稿となります。
そこで、今回はカテゴリーを指定する方法を紹介します。
やっぱり一目瞭然でわかるので、サンプルです。
XML-RPCを利用したWordPressへの投稿とカテゴリー指定するサンプル
includeで指定している、IXR_Library.phpファイルの入手方法は、
「XML-RPCを使ってWordPressへ投稿する」を参照してください。
< ?php
/*
* XML-RPC接続テスト
*/
include_once('IXR_Library.php');
$site_url = 'http://hogehoge.com';
$userid = '[wordpressのID]';
$userpw = '[wordpressのPassword]';
//wordpressのxmlrpc.phpがある場所を指定
$base_uri = $site_url . '/xmlrpc.php';
//接続パラメータ
$encoding = 'UTF-8';
$method = 'metaWeblog.newPost';
$title = 'タイトル・タイトル・タイトル';
$description = '本文・本文・本文' . "\n" . 'あいうえお';
//実際に送るデータ
$params = array(
1,
$userid,
$userpw,
array(
'title' => $title,
'description' => $description,
'dateCreated' => '',
),
0, //0:草案 1:公開
);
// XML-RPC通信をする
$client = new IXR_Client($base_uri);
$return = $client->query($method, $params);
if ( !$return ) {
echo $client->getErrorCode() . ':' . $client->getErrorMessage() . '\n';
exit();
}
$postid = $client->getResponse(); //PostIDの取得
//カテゴリ変更
$method = 'mt.setPostCategories';
$categories = array("categoryId"=>"3"); //変更後のカテゴリID
//実際に送るデータ
$params = array(
$postid,
$userid,
$userpw,
$categories
);
// XML-RPC通信をする
$client = new IXR_Client($base_uri);
$return = $client->query($method, $params);
if ( !$return ) {
echo $client->getErrorCode() . ':' . $client->getErrorMessage() . '\n';
exit();
}
?>
とっても簡単でした。
WordPressへ投稿実行すると、PostIDが取得できるので、そのPostIDを使ってカテゴリーを指定してやればOKとなります。