WordPressでXML-RPCを使う

11月 8th, 2007 | このエントリをはてなブックマークに追加 このエントリをdel.icio.usに追加 このエントリをLivedoor Clipに追加 このエントリをYahoo!ブックマークに追加 このエントリをFC2ブックマークに追加 このエントリをNifty Clipに追加 このエントリをPOOKMARK. Airlinesに追加 このエントリをBuzzurl(バザール)に追加 このエントリをChoixに追加 このエントリをnewsingに追加 

coolwebさんからソースコードの公開依頼をいただきましたので、
載せてみたいと思います。

 
まず、XML-RPCのライブラリを使っています。

The Incutio XML-RPC Library for PHP

ここにあるIXR_Library.inc.phpをそのまま利用していることを
前提としたソースになります。

/*
* XML-RPC接続
*/

//wordpressのxmlrpc.phpがある場所を指定
$base_uri = $value[”SITE_URL”] . “/xmlrpc.php”;

//接続パラメータ
$encoding = ‘UTF-8′;
$method = ‘metaWeblog.newPost’;

$title = “タイトル・タイトル・タイトル”;
$description = “本文・本文・本文”;

//実際に送るデータ
$params = array(
1,
$value[”PASSWORD_USER”],
$value[”PASSWORD”],
array(
“title” => $title,
“description” => $description,
“dateCreated” => “”,
),
1,
);

// XML-RPC通信をする
$client = new IXR_Client($base_uri);
if (!$client->query($method, $params)) {
echo $client->getErrorCode().”:”.$client->getErrorMessage().”\n”;
exit();
}

Movable TypeのmetaWeblog.newPostを使って、
WordPressのDBにInsertしています。

【参考】
Movable Type で使える XML-RPC API

 
自分のソースに自信がないので、
間違いがありましたら、ご指摘いただきたいと思います(苦笑)
 
tagged:

Trackback URL for this post:

WordPressの作りを調べる(XML-RPC)

10月 29th, 2007 | このエントリをはてなブックマークに追加 このエントリをdel.icio.usに追加 このエントリをLivedoor Clipに追加 このエントリをYahoo!ブックマークに追加 このエントリをFC2ブックマークに追加 このエントリをNifty Clipに追加 このエントリをPOOKMARK. Airlinesに追加 このエントリをBuzzurl(バザール)に追加 このエントリをChoixに追加 このエントリをnewsingに追加 

会社でいろいろあって(笑)、WordPressのソースを見てみました。

やりたいことは、管理画面を使わなくても記事投稿ができるようにすること。

WordPressにはRSSインポート機能があるので、
それをどうにかいじってできないかを考えて調べていました。

 
見ているとどうも、

import.php
admin.php
rss.php
functions-post.php

あたりが関係してそうな感じでした。

そこで、functionのwp_insert_postなどを利用して
別でPHPを作成しINSERTを試みるも失敗・・・。

 
その後もいろいろいじってみましたが、できませんでした。。。

結構ソースを見たのですが、
継承が複雑にあって、私にはどうにもできないと判断。

 
すると、XML-RPCという便利な機能があると言うことを聞き、
PHPを作成して作ってみると・・・。

できました(笑)

 
最初からXML-RPCを使えば良かった・・・
XML-RPC自体あまりわかっていなかったので、
使ってみるのがちょっと怖かったというのが大半の理由なのですが。

何にしても使ってみることは重要だと学びました。
 
tagged:

Trackback URL for this post: