MT4をIE6で操作した場合の問題
MT4をIE6で操作すると、一部の機能が働かないようです。
その機能ですが、ブログ記事なので一覧ページでチェックボックスをチェックしての
操作です。

この画面で記事を削除しようとしても、削除されません。
私はIE6とFireFoxの最新版を使っています。FireFoxのバージョンは現時点では
2.0.0.13となっていますが、もっと前のものでもFireFoxでは正常に動作しました。
たぶんIEでもIE7なら正常に動作すると思います。
タグ
2008年4月1日 | コメント/トラックバック(0) |
カテゴリー:MT
MT4のダイナミックパブリッシングのキャッシュの有効期間を設定する
MT4でダイナミックパブリッシングに設定した場合に
キャッシュを使うように設定できます。
設定方法は公開方法として「テンプレート毎に公開オプションを設定する」を
選んで、その下のキャッシュをチェックします。

このMTで使われているキャッシュですが、SmartyというPHPのライブラリです。
このSmartyはテンプレートにPHPから吐き出す動的コンテンツを組み込んで
キャッシュファイルを吐き出す仕組みで、キャッシュの有効期間を設定できます。
MT4のキャッシュの仕組みを見てみると、このSmartyが使われているのですが、
有効期間が設定されていません。
Smartyのキャッシュの有効期間の初期値は1日になっています。MTでも有効期間が
設定されていませんので、キャッシュの有効期間は1日になっています。
つまり、1日に一回だけファイルが更新されるのです。
でも基本的にファイルの内容が変わらないのに、キャッシュを更新する必要があるのか?
ということで、キャッシュの有効期限が切れないように変更してみました。
この変更は設定では出来ませんので、MTのプログラムを直接修正することに
なります。
変更箇所は
MT-4xxx/php/mt.php の中の
function configure_paths($blog_site_path) という関数の中の
$ctx =& $this->context(); という行があるのでその下に
$ctx->cache_lifetime = -1;
という一行を追加します。
この-1という指定がキャッシュが切れないという指定になります。
これでファイルの内容を修正しない限りは、キャッシュが有効になります。
もし有効期限を2日にしたい場合には
$ctx->cache_lifetime = 60*60*24*2;
とします。この例でわかると思いますが、この値は有効期限の秒数を設定します。
以上ですが、私は静的ファイルで運用しているため、この修正で
なんらかの不具合が起こるかは不明です。もしかしたら、長期運用した場合には
なんらかの不具合が起こる可能性があります。ということでこの修正は自己責任で
お願いします。
タグ
2008年4月1日 | コメント/トラックバック(0) |
カテゴリー:MTカスタマイズ

