1.0.13では、ヘッダーがCacheされないと先日書きましたが、Joomla!1.5ではどうもCacheされているようです。すごい!
私としては、一番ベストなCache方法だと思います。パーツごとにCacheして且つヘッダーまでもなんて、なんてナイスなんでしょう。すばらしい。
ということで・・・SyntaxHighlighter for 1.5とGrayBox for 1.5のアップデートは、やめます。![]()
さて・・・いつものようにRSSの記事を流し読みしていたらなんと!「インターネットマガジン」を無償公開とあるではないですか。こりゃ得か?(購読者でもないのに・・・) いや、無償ですよ。無償。
早速、購読者になる私でした。
昨日ある問い合わせがあってCacheのことでJoomlaのソースを眺めていました。
Joomla!のCacheは、パーツごとにCacheファイルを作成し、それをパーツごとに読み込むようになっているようです。たとえば記事なら記事ごとにファイルが作成されます。モジュールならモジュールごとに。そうすることのメリットは、Cacheされては困るパーツは、Cacheさせないようにすることができるからだと思います。たとえば、このサイトで使用している!JoomlaCommentもその一つですが、Cacheされてしまうと投稿した内容はすぐに反映されません。明示的にCacheをクリアするしかありません。また、このサイトで配布しているPluginの中でもJavascriptをヘッダーに出力しているもの(SyntaxHilighter, CodePress Plugin, GreyBox)は、Cacheに対応していません。というより、Joomla!のCacheがヘッダーとともにCacheしないからです。その理由もわかります。パーツごとに管理しているため、Cacheしないパーツがヘッダー内の出力を変更することを考慮しているからだろうと想像します。Pluginは、記事内の設定された文字により、ONになります。Cacheから読み込まれた場合はPluginを通過した後の記事となるためPlugin自体を通過しません。よってヘッダーには出力することができません。
サードパーティーのCacheエクステンション(ヘッダーを含めすべてをCacheしてくれる。)をひとつ試してみましたが、すべてのエクステンションに対応しているわけでは無いのでサイトで使用しているエクステンションによっては、自分で対応するように工夫しなければなりません。このサイトではCacheはオフにしていますが、Cacheの応答性を考えるとやはり対応していかなければならないと考えています。
そこで対応の方法を考えてみました。
と、そうしなくても簡易対応ならできます。
対応していないPluginは、次のバージョン(マイナー)で簡易対応するつもりです。
XML-RPCですが、Joomla!1.5ではどうもbloggerAPIのみの対応っぽいですね。他のAPI対応の動きは盛んなようですので最終的にはサードパーティーからになるかもしれませんが、公開されるような気はします。私も密かにつくりかけてたり・・・。