2009年3月8日日曜日

JavaScriptからWordPressへコメントを投稿する方法

JavaScript から WordPress へコメントを投稿する方法をメモしておきます.
  • XML-RPC には,JavaScript のライブラリである Mimic を使用
  • コメントの投稿には,WordPress独自のAPIである wp.newComment を使用
  • wp.newComment のパラメータは,ブログID,ユーザ名,パスワード,エントリID,コメントに関する情報(配列ではなく,オブジェクト)

コードで記すと以下のようになります.

var comment = new Object();
comment.content = "コメント";
var request = new XmlRpcRequest(url, 'wp.newComment');
request.addParam("ブログID");
request.addParam("ユーザ名");
request.addParam("パスワード");
request.addParam("エントリID");
request.addParam(comment);
var response = request.send();


[1] Mimic
http://mimic-xmlrpc.sourceforge.net/
[2] wp.newComment
http://codex.wordpress.org/XML-RPC_wp#wp.newComment

2009年3月4日水曜日

[続]XML-RPCでのWordPressへの投稿に問題があるみたい

XML-RPCでのWordPressへの投稿に問題があった件の続きです.

この問題は,PHPが使っている libxml2 ライブラリの不具合に起因するようなのですが,バージョン2.7.3では,それが解消されているそうです[1].

そこで,Fedora の libxml2 のバージョンを調べてみると,2.7.3でした.それでも問題は起こっているので,今度は PHP が使っている libxml2 のバージョンを調べてみました(phpinfo()で).そうすると,その時点の PHP では2.7.1の libxml2 を使っていることがわかりました.

そういうわけで,PHP を自前でコンパイルして,インストールしてみました.結果はグッドです.ネットの情報の通り,2.7.3の libxml2 を使うと,問題が解消しました.よかった.

ちなみに,B2Evolutionというブログソフトウェアもインストールしてみたのですが,これはPHPで実装されているので,WordPressと同様の結果になりました(XML-RPCで正しく投稿できませんでした.PHPが悪いので当然なんですけど.後で気づきました).

[1] PHP と libxml2 の関係
http://www.mail-archive.com/freebsd-users-jp@jp.freebsd.org/msg03301.html

2009年2月28日土曜日

XML-RPCでのWordPressへの投稿に問題があるみたい

Fedora 10上で WordPress 2.71をインストールしたのですが,XML-RPC での投稿がうまくいかなくなってしまいました.いろいろ調べた結果,どうもその WordPress が使っている libxml2 というライブラリに不具合があるみたいです.詳しい内容は以下のサイトで書かれています.

問題が解消するまで,前に使っていた Roller に戻ろうかな.うーん.どうしよう.

[1] Problems With libxml2 For WordPress XML-RPC Users
http://josephscott.org/archives/2008/12/problems-with-libxml2-for-wordpress-xml-rpc-users/

2009年2月27日金曜日

Subversionにてリポジトリ内のディレクトリの配下にあるファイルの一覧を表示する方法

Subversionにてリポジトリ内のディレクトリの配下にあるファイルの一覧を表示する方法を以下にメモしておきます.

svn ls 表示したいファイルが置かれたディレクトリのURL

2009年2月10日火曜日

yum にパッケージを自動更新させるための方法

yum にパッケージを自動更新させるための方法を以下にメモしておきます.

su -
yum -y install yum-fastestmirror
yum -y update
yum -y install yum-cron
service yum-cron start
chkconfig yum-cron on
exit


[1] Fedora 10初期設定 - Fedoraで自宅サーバー構築
http://fedorasrv.com/fedora10-init.shtml

2009年1月30日金曜日

Webアプリケーション起動時にサーブレットを開始する方法

Webアプリケーション開始時にサーブレットを開始する方法をメモしておきます.

servlet 要素内に load-on-startup 要素を記述します.load-on-startup 要素の内容には開始する順番を表す0以上の整数値を指定します.小さい値ほど早く開始されます.

<web-app>
  <servlet>
    <servlet-name>servlet</servlet-name>
    <servlet-class>hogehoge.Servlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
</web-app>

2009年1月29日木曜日

Tracで「Permission denied」と表示されるエラー

Tracで「Permission denied」と表示されるエラーに遭遇したのですが,その解決方法をメモしておきます.

vi /etc/httpd/httpd.conf/trac.conf
----------------------------------------
<Location /trac>
  SetEnv PYTHON_EGG_CACHE /tmp # <-追加
</Location>
----------------------------------------


ちなみにエラーメッセージは以下のような感じです.

The following error occurred while trying to extract file(s) to the Python egg
cache:

[Errno 13] Permission denied: '/.python-eggs'

The Python egg cache directory is currently set to:

/.python-eggs


[1] Tracのインストールでハマる (.python-eggsのパス)
http://d.hatena.ne.jp/mahata/20080624/1214284997