Joomla!1.5.10セキュリティリリースということなのでアップデートした方が良いのは間違いありません。
今回は、「One low-level and one moderate-level」とあるので環境によっては慌てなくてもよいかもしれませんが、バックエンドを複数のメンバーで管理されている方は注意した方が良いかもしれません。また、バグフィックスも行われています。
早速、demo.joomler.netもアップデートを行いました。
アップデート方法は、簡単です。
次は、Joomla!1.6かとも思っていましたが、もう少しかかるようですね。
たまに使い方などをYouTubeにアップロードすることがあってhttp://demo.joomler.net でデモを行っているのでご存じの方もいるでしょう。
そのチャンネルが通常のリンクなら4:3の比率で表示されるのですが、それをワイドに表示する方法。
リンクに "?wide=1"を付け加えるだけです。
例えば私のチャンネル Joomlerだと
http://jp.youtube.com/user/joomler?wide=1
これで以下のようにワイド表示になります。
Joomla!1.5.7がリリースされています。
今回も早めにアップグレードした方が良さそうです。
若干の機能追加もあり、変更部分を見てみると現在作成中のJContentPlusにも反映しないといけなさそうなものや、反映した方がよさそうなものもありました。
サードパーティーのエクステンションの動作には影響は無いでしょうが、今回の変更内容を考慮したものに変更した方が良いものがあるかもしれません。
アップグレード方法はこちらで以前に書いた方法(といっても上書きするだけですが・・)でOKでした。demo.joomler.netもさっさとHackした部分を除いてFTPで上書きしただけです。Hackした部分は変更内容のみ反映してから上書きしました。所要時間5分くらいでしょうか。
さっさとやってしまいましょう。
携帯Google Mapモジュールのデモをdemo.joomler.netで以前から公開していますが、自分では全く見ていません。先日ふと見てみると「友達に送る」リンククリックで件名が文字化けしているは、URLがURIだし、こりゃ駄目だと。いつの間にそうなったのだろうとふと考えてみるとサーバー移転時にURIの部分を変更しなおしたことを思い出しました。
で、ひとつ間違いを発見。80Codeサーバーでの設定でuri.phpをHackした部分にさらに変更を加えないとだめです。(まあ、考えてみれば当然なのですが今まで不都合なかったので・・・)
$uri =& JURI::getInstance();
パスしか返さないJURI::base()を参照するのはおかしいのでこのように変更しました。
※80Codeサーバーでのみなので他のサーバーでは必要ありません。もしかしたらうちだけかもしれないけど。
・・・でも、これが正解のような気がしないでもない・・・。
件名が文字化けすることは、以前に何度も確認したつもりでDocomoの時だけSJISにするようにしていてOKだったのですが、うちのauでも文字化けするようになってました。(なんでかな・・・)
で、SJISに変換するようにしたらOKでした。
以前に書きかけてやめた内容です。その変更が間違っているかもしれないからです。Joomla!のHackでなくサーバーの設定やhtaccessでの回避が可能とも思えるのですが、探しても適切な内容には行き当たりませんでした。(そのあたりはあまり詳しくはありません。)事実、CORESERVERでは下記のHackは適用していなかったので環境によるものだと思います。
80codeサーバーでJoomla!1.5のSEFをオンにすると(独自ドメインを使っている環境下のテストしかしていません。)、メニューの一階層目は正しく表示されますが、2階層目以降は本来のURLに付加された疑似フォルダ(変)がトップレベルの階層になってしまい、404エラーとなってしまいます。それにはじめて出くわしたときはいろいろ検索したのですが、なかなか適当な記事を発見できず、安易にHackという方法をとっています。
変更は、以下の通り。
Root/libraries/joomla/environment/uri.php
return $pathonly === false ? $base['prefix'].$base['path'].'/' : $base['path'];
を以下のように変更することで通常のように表示できています。
if(JPATH_BASE == JPATH_ADMINISTRATOR) {
return $pathonly === false ? '/administrator/' : '/administrator';
}
return $pathonly === false ? '/' : '';
// return $pathonly === false ? $base['prefix'].$base['path'].'/' : $base['path'];
236行目は、変更前のものをコメントアウトしているだけです。すぐに戻せるように残しています。
また、htaccessの「RewriteBase /」部分を有効にしてください。
うちのデモサイトhttp://demo.joomler.net/ではこの変更を適用しています。今のところ何も問題ありません。ただ、サードパーティーのエクステンションは私の作成したものだけで他のエクステンションでは悪影響があるかもしれないのでご注意ください。
また、他の回避方法(サーバー設定など)をご存じの方は是非教えて下さい。