ブログAPIまとめクラス PEAR::Services_Blogging

PHP::PEAR

概要

これはなかなか便利そう。

(ノ・・)ン。。。。。。(((●コロコロッ

今までも、trackback, ping, xmlrpcなどAPIを使ってやりとりするサポートクラスはPEARにもあったが、
今度はXMLRPCをAPI利用する事自体をクラス化したものが登場した。
それが
PEAR::Services_Blogging

利用できるAPIは

それぞれ出来ることが異なっているので、
抽象化するのはなかなか難しいと思うが、
いろんなAPIに対応していくれると非常にありがたい。
ただし、このライブラリはPHP5以上が必要。

利用できる機能は

と一通り揃えているので、
遠隔でブログツールを制御するツールや、
ケータイ投稿するツールなど
幅広い利用が考えられる。

サンプル

一覧

まずはブログの一覧を取得。
取得にはBloggerAPIを使用する。

<?php
require_once 'Services/Blogging.php';
$user = 'dozo';
$pass = 'hogeo';
$host = 'dozo.matrix.jp';
$path = 'pear/index.php'
$blogObj = Services_Blogging::factory('Blogger', $user, $pass, $host, $path);
$posts = & $blogObj->getBlogs();  

var_dump( $posts ); 
?>

結果は?

[0] => Services_Blogging_Blog Object
   (
       [values:protected] => Array
           (
               [id] => 1
               [name] => Blog 1
               [url] => http://dozo.matrix.jp/
           )
   )
[1] => Services_Blogging_Blog Object
    (
        [values:protected] => Array
            (
                [id] => 2
                [name] => Blog 2
                [url] => http://dozo.matrix.jp/
            )
    )

ちゃんと一覧が取れている。
通信がうまくいっている証拠だ。

新規投稿

次は投稿。
コードは上からの続きね。

<?php
$postObj = $blogObj->createNewPost();

$postObj->content = "遠隔でブログに投稿してみましたよー\r\n\r\nちゃんと動いてますかー";
$blogObj->setBlogId('1');
$blogObj->savePost($postObj);
echo 'post id: ' . $postObj->id;
?>

postidが帰ってきている。
実際にブログを見てみるとちゃんと記事が投稿されているのがわかる。
後はBlogID, PostId?を如何にとってくるかを考えるだけ。
それをsavePostに当てれば編集、deletePostに当てれば削除になる。

ちょっと待て、一言言わせろ
タイトル投稿できねえよ!!(゜Д゜)
それはBloggerAPIを作ったGoogleに言って欲しい。
出来れば私もMetaWeblog?を使いたい。
だが、なぜかこのライブラリは必須のはずのBlogID指定がBloggerAPIでしかできない。
しかも型がProtectedなのでHackする以外にセットする方法がない。
要望を出そうとしたがMLに入れと言われやめた。
(執筆時ver1.1)

ちょっと要望も書いてみたり。

mtAPIも欲しいなぁ。

ハマリポイント

MTユーザは違う意味でハマリポイントが多い。 
詳しくはこちら。

http://hain.jp/index.php/tech-j/2007/01/22/p121


お名前:


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Third Project
証券会社ランキング比較