Ajax Edit Commentsフリー版(v.5.0.7.0)のLAMP系での使い方。

投稿アップデート情報  追記2(2/7)  追記3(2013/1/12)  追記4(1/25)

追記3(2013/1/12):
 うれしいことに, Ron が戻ってきて, v.5.0.13.0 がリリースされた。試してみたらこれは,楽に動くようだ。 12 日現在,日本語化ファイルは旧いものしか同梱されていないので, v.5.0.13.0 用をここに置いた。

追記4(1/25):
 最新版の日本語化ファイルは,右下の「いろいろ」のところ,あるいは,ここから落とせるように変更した。

———————————————————————————————————————————————
 Ajax Edit Commentsフリー版(v.5.0.7.0)の件の追加記事です。

 昨日から,juneさんと一緒にああでもないこうでもないとやってきたが,どうやらできた気がする。@pagesとXREAと,どちらも同じ方法で成功したのでその方法をまとめておく。

 WP Ajax Edit Commentsのフォーラムにも後で報告しておこうかな。

 使えるようになっても,「Stack overflow at line: 2 too much recursion」のエラーは残る。今回,このエラーのせいでAjax Edit Commentsフリー版(v.5.0.7.0)が動かないのではないかと誤解したところからややこしくなったが,結局は別の問題のようである。

 では,一つずつ手順を書いていく。

  1. ダッシュボードのプラグイン・メニューから,Ajax Edit Commentsバージョン 5.0.7.0を新規追加で,あるいは,アップデート・メニューからインストールする。インストールの終了時にプラグインを有効化するボタンがあるが, ここでは絶対に有効化してはいけない。
  2. FTP接続ソフトでサイトにアクセスし,/wp-content/uploads の直下にaecというディレクトリを作り,パーミッションを707or777にする。
    新しいAjax Edit Comments はスクリプトがaecというディレクトリを作って使うようになっているのだが,所有権とパーミッションの設定がうまくいかないくて,動かないようだ。
  3. ダッシュボードのプラグイン・メニューから,Ajax Edit Commentsを有効化する。aec下にはadmin.js,edit-comments.css,ajax-edit-comments.js,comment-editor.css,frontend.js,popups.js が必要だが,この時点では,admin.jsとedit-comments.cssしかない。Ajax Edit Commentsの設定ページに行って,[設定の更新]ボタンを押すことで,他の4つのファイルも生成される。
  4. スクリプトが生成した admin.js,edit-comments.css,ajax-edit-comments.js,comment-editor.css,frontend.js,popups.js の所有者がサーバになっているので,これを他のファイルと同じく自分に変更する。shellが使えるならコマンドを打てばいいが,たいていは無理。そこで,まず,aecをそっくりダウンロードする。
  5. 次にaecをそっくり削除する。中だけを削除しようとしても所有者が違うのでうまくいかないよ。ここで,2.でaecを手動で作成したことが生きてくるわけ。まぁ,場合によっては,ディレクトリが空でないと削除できないということもあるかもしれないが。
    削除後,再度aecを作り,ディレクトリのパーミッションを707or777にする。
  6. aecの中の6つのファイルをアップロードし,パーミッションを606or666にする。

 これでうまくいくはず。健闘を祈る(爆)。

追記:
 本家のファイルを見ると,aecの下に <?php // Silence is golden. の記載されたindex.phpもある。これも手動で作っとくべきかな。

追記2(2/7):
 一応無事つかえてはいるけれども,どう考えてもWordPressのプラグインとはいえない。インストールして有効化したらすぐ使えるというのが,こういうプラグインのスタイルである。プラスアルファとして,オプション設定が必要なことはあるが,サーバの設定じゃあるまいし,FTPで接続してとかshellを使ってとか,ゴリゴリやらなきゃならないなんて,WordPress本体の設置においてすらまれなことだ。ましてや,ものはプラグインなんだから。
 Ver.4.1.8.3までは原作者のAjay と Ronald の名がみえるが,history.txtを見ると4.1.9.9からはRonの名前だけで,現在はその名すらない。なんかどうもすったもんだを感じさせる記録だネ。
 1月末にRonに出したメールにはすぐに返事が来て,もう手を離れているのでそれほどできることはないけれど,何とかいろいろやってみるということだった。ネット上に旧安定板が出ているようだが,もしかしたら彼が関係あるのだろうか。本当のところは分からない。すべて藪の中だ。
 いずれにしても,現在のバージョンについては,http://ithemes.com/ に責任がありそうなので,サポートフォーラムを見に行ったが,どうも頼りになりそうになく感じたので,Ajax Edit Commentsのサポートからもらったメールに入っていたとこ宛てに,苦情を書いてみた。一昨日のことだ。しかし,今のところ返事は来ていない。どうなるかわからない。http://wordpress.org/extend/plugins/wp-ajax-edit-comments/ での対応を見ていると,あまりあてにはなりそうにない。このプラグインがこのせいでダメになるとしたら,残念なことだ。

本家のお世話-#25。(PHP5.3.10へアップデート)

投稿アップデート情報  追記(2/7)  追記2(2/7)  追記3(2/9)  追記4(4/11)

 Effective DoS attacks against Web Application Plattforms ? #hashDoS のように PHP5.3.9 に追加されたコードに,remote からのコードの実行を招く別の欠陥があるという指摘があったばかりだが,PHP5.3.10 が出た。PHP News Archiveよれば,「All users are strongly encouraged to upgrade to PHP 5.3.10.」ということなので,早速やる。

 Apacheもorg版は2.2.22になってるんだが,Lounge版はまだのようだ。

  1. 何はともあれ,php-5.3.10-Win32-VC9-x86.zip をダウンロード,サーバ機がWindowsXpSP3(x86)なので。
  2. 適当なところに,ファイルを展開。
  3. 5.3.9 の php.ini-production と 5.3.10 の php.ini-production を
    fc /n c:\php.ini-production c:\php\php.ini-production >c:\compare.txt
    で比べてみた。相違点はなかったので,php.iniは 5.3.9 のものをそのまま使う。
  4. php.ini以外の展開したファイルと5.3.9のファイルをそっくり差し換える。

 
 ところで今日は立春ですね。

追記(2/7):
 そういえば,PHP 5.4.0がRC6まで行っている。次の候補版のリリースは2月2日と書いてあるが,少し遅れいてるみたいで,RC7は,まだPHP Quality Assurance Team Web Page.にしかないようだ。遅れているわけではなくて,NEWSもちゃんと出ていた。http://www.php.net/のトップに記載がないだけらしい。  斜字体は2/9追記
 NEWSを読んでいてもピンとこないことばかりで,これらのテストをしようなどという大それた気は毛頭ないのだが,NEWSを読んでいてちょっと気になる項目があった。「<?= は今後short_open_tagの設定にかかわらず,有効になります。」と書いてある。そういえば,どっかほかのところでも,そんなことを読んだ気がする。
 short_open_tagについては,昔,痛い目にあったことがある。5.3.10のphp.iniを調べてみたら,
    ; short_open_tag
    ; Default Value: On
    ; Development Value: Off
    ; Production Value: Off
となっていた。使っているのは,php.ini-production だから,自鯖では当然Offになっているわけだ。で,恐る恐るOnにしてみた。こいつが関係あるのは,確か,PHPをXMLと組み合わせたときの<?xml ?>とかに関係あるだけだったと思うから,今は,WordPress以外のスクリプトはほとんど使っていないし,使ってる分も自分で作ったものだけのはずだから,大丈夫だとは思うんだが……

 さて,Apacheを再起動。

 大丈夫みたい。ホッ。これでこの件に関しては5.4.0にするときも問題なしだね。

追記2(2/7):
 ここのところ,1週間ばかりhttp://www.gknw.de/mirror/curl/win32/に接続できなかった。http://curl.haxx.se/を見ると,version 7.24.0が出ているみたいだけどと思いながら,他に落とせるところはないだろうかと探していて,http://fossies.org/windows/www/curl-7.24.0-ssl-sspi-zlib-static-bin-w32.zip/を見つけた。
 で,今まで読み違えていたcurl.exeに関することと,最近のPHPにはもともとlibeay32.dll も ssleay32.dll含まれていることに,気づいた。どこかで勘違いして,「curl.exeがPHPのライブラリとしている」と思い込んでしまっていたのだが,実はいらなかった。どこで勘違いしたのだろう。cURLのインストール手順には,「libeay32.dll および ssleay32.dll が PATH の通った場所に存在する必要があります。」とちゃんと書いてあるのに!! 落ち込む。
 一応趣味だから,libeay32.dllはversion 7.24.0にしたけど……(爆)

追記4(4/11):
 PHP導入についての新しい記事を,本家のお世話-#28。本家のお世話-#29。に書いた。