WordPress.comが受け取るXML-RPCのメソッド名一覧を取得する

本Blogでも利用しているBlogソフトウェアWordPress。さまざまな外部のサービスと連携するために、XML-RPCによるAPIが用意されています。そのWordPressのAPIを呼び出すサンプルです。

手始めに、WordPressのホスティングを行っていて、3GBまで無料で利用できるWordPress.comにアカウントを取得。このサービスがどのようなAPIを持っているか、その一覧を取得するAppleScriptを書いてみました。

XML-RPCによるWebサービスは、必死になって探さないとなかなか継続して行われているサービスを(日本国内で)みつけることは難しいところですが、Blogはその例外といえるのかもしれません。

ちなみに、WordPress.comにコンテンツをホスティングすると、AS-Holeのコンテンツ内に記述しているスクリプトリンク(「applescript://」ではじまるリンク)がすべて無効化されてしまうので、現状ではWordPress.comにAS Holeを移転させることはできません。

スクリプト名:WordPress.comが受け取るXML-RPCのメソッド名一覧を取得する
tell application "http://piyomaru.wordpress.com/xmlrpc.php" たぶん、最新版のWordPress(2.8)
  call xmlrpc {method name:"mt.supportedMethods", parameters:{}}
end tell

> {"wp.getUsersBlogs", "wp.getPage", "wp.getPages", "wp.newPage", "wp.deletePage", "wp.editPage", "wp.getPageList", "wp.getAuthors", "wp.getCategories", "wp.getTags", "wp.newCategory", "wp.deleteCategory", "wp.suggestCategories", "wp.uploadFile", "wp.getCommentCount", "wp.getPostStatusList", "wp.getPageStatusList", "wp.getPageTemplates", "wp.getOptions", "wp.setOptions", "wp.getComment", "wp.getComments", "wp.deleteComment", "wp.editComment", "wp.newComment", "wp.getCommentStatusList", "blogger.getUsersBlogs", "blogger.getUserInfo", "blogger.getPost", "blogger.getRecentPosts", "blogger.getTemplate", "blogger.setTemplate", "blogger.newPost", "blogger.editPost", "blogger.deletePost", "metaWeblog.newPost", "metaWeblog.editPost", "metaWeblog.getPost", "metaWeblog.getRecentPosts", "metaWeblog.getCategories", "metaWeblog.newMediaObject", "metaWeblog.deletePost", "metaWeblog.getTemplate", "metaWeblog.setTemplate", "metaWeblog.getUsersBlogs", "mt.getCategoryList", "mt.getRecentPostTitles", "mt.getPostCategories", "mt.setPostCategories", "mt.supportedMethods", "mt.supportedTextFilters", "mt.getTrackbackPings", "mt.publishPost", "pingback.ping", "pingback.extensions.getPingbacks", "demo.sayHello", "demo.addTwoNumbers", "wpStats.check_key", "wpStats.get_blog_id", "wpStats.get_site_id", "wpStats.update_bloginfo", "wpStats.update_postinfo", "wpStats.ping_blog", "wpStats.flush_posts"}

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

Leave a Reply