mobile-gateをちょっといじった
WordPress 2月 16th, 2008 at 22:45:15ひとつ前に表示されているように、ケータイから画像付きで投稿できるようになりました。
WordPressのプラグイン(じゃなくてヘルパーアプリケーションかな?)であるmobile-gateをインストールしたのです。
が、そのままインストールしたのでは実はうまくいかなくて、EZMailでメールを送ることはできるけど、WPMailでブログにアップするところでエラーが出てた。Mail_mimeDecode::decodeクラスが無いとかなんとか。
で、ちょいといじったらうまくいったのでした。
mobile-gateをインストールしたところにあるindex.php、その239-250行目の
function RequireSubModule($ModuleName) {
/* $ModuleSubDir = MGATE_MODULE.$ModuleName.”/”;
if (is_dir($ModuleSubDir)) {
$ModuleSubHandler = opendir($ModuleSubDir);
while(($SubModuleFile = readdir($ModuleSubHandler)) !== false) {
if(!is_dir($SubModuleFile) && $SubModuleFile != “PEAR.php” && strtolower(substr($SubModuleFile,-4)) == “.php”)
require_once ($ModuleSubDir.$SubModuleFile);
}
closedir($ModuleSubHandler);
}*/
}
色つきの所を次のように変更。
function RequireSubModule($ModuleName) {
/*コメントアウト解除*/ $ModuleSubDir = MGATE_MODULE.$ModuleName.”/”;
if (is_dir($ModuleSubDir)) {
$ModuleSubHandler = opendir($ModuleSubDir);
while(($SubModuleFile = readdir($ModuleSubHandler)) !== false) {
if(!is_dir($SubModuleFile) && $SubModuleFile != “PEAR.php” && strtolower(substr($SubModuleFile,-4)) == “.php”)
require_once ($ModuleSubDir.$SubModuleFile);
}
closedir($ModuleSubHandler);
}/*コメントアウト解除*/
}
「コメントアウト解除」というのは単なるコメントなので何でも良い。要するに「/*」で始まり「*/」で終わる部分はプログラムに影響しないので、RequireSubModuleという関数は何もしていなかったのを、機能するように変えたと言うわけです。なので「/*」と「*/」(色つきの所)を削除しても良いと言うことです。
このやり方で正しいのか、問題ないのかは検証しないと行けませんが、これでとりあえずmobile-gateが機能するようになりました。
詳しくはわからないけど、本来働くべきMail_mimeDecode::decodeが働かないので、mobile-gateと一緒にインストールしたmimedecode.phpとPEAR.php(mobile-gateをインストールした場所のフォルダmodules/wp-mailに入っている)を働かせるようにした、ということなのかな?