MobileConverterを改造した。

あ~ゆ~どりま~ | [MODx]MobileConverter

仕事上で使わせていただきました。
soushi 様ありがとうございます。


MobileConverterを入れてみる - popowa - メーヴェに乗りたい


上記のサイトにある様に realpath() ではまったので
デバッグしてみたところ変換後の画像ファイルは通常
存在しないので $realChgFile には false が格納され、
image(gif|png|jpeg)() の部分で落ちてしまう様だ。

    if(! is_file($realChgFile)  || is_file($realChgFile) && filemtime($realChgFile) < $realFileTime ){      


の部分でファイルが存在していてタイムスタンプが古い場合
に画像変換するように指定されているので、せっかくなので
上記条件判定後に改めて $realChgFile を設定するようにし
てみた。


また先頭に'/'が無い場合に対応し、さらにWordpressIntegrator
を利用している為、それまでの投稿にも対応するように強引にホスト
部分を変換してしまった。


※デフォルトのままだと画像ファイルがフルパスになって
 しまう為ファイルアップロードの設定で相対パスを指定
 し、年月ベースのフォルダ指定を解除しました。

72a73,75
> 
>     $fMt[0] = preg_replace('/http:\/\/www\.example\.com/', '', $fMt[0]);
> 
78a82,85
> 
>     if (! preg_match('/^\//', $imgPath))
>         $imgPath = '/' . $imgPath;
> 
115a123,124
>   
>       $realChgFile = MODX_BASE_PATH . $chgFile;


なんか結構その場しのぎの対応なのでもうちょっときれいに書け
ないものだろうか?