Ajax によるサイドバーパーツのモジュール化
MT4.0になってからも、MT3.xの時に作ったテンプレート&スタイルシートでやってたんですが、年末年始の休み中にMT4.0流のテンプレートにしてしまおう、ということで色々調べてみました。
MT4.0のテンプレートでは、アーカイブの種類ごとにテンプレートを書くのではなくて、ヘッダとかサイドバーとかのパーツごとにテンプレートを書いて、アーカイブを吐き出す時に書くパーツを呼び出してhtmlを生成する、なんてやり方になっているようで、そうするとサイドバーに最近のエントリーとか最近のコメント、トラックバックなど、度々データが入れ替わるようなものを付けるとエントリーを投稿するたびに全再構築、なんて羽目になるのでこれが大問題、どうするかと考えてたんですが、小粋空間にPHPでなくてもajaxでパーツを作ってサイドバーに表示させる、なんて方法が書かれていたので、取り入れてみました。なかなか良い感じです。
Movable Type のサイドバーの各リストを、Ajax でモジュール化を行う方法を紹介します。 1.PHP モジュール化と Ajax モジュール化の違い Movable Type における PHP モジュール化には次のようなメリットがあります。ただし PHP モジュール化は、ユーザがブラウザからインクルード元のページにアクセスした時、インクルード元のページはインクルード先の各モジュールを読み込んだコンテンツを生成・返却するため、サイドバーに多くの情報をインクルードしていると、PHP でページを生成する分、表示が遅延します。 本題とはそれますが、WordPress で表示までに若干のタイムラグが生じるのは、この PHP によるページ生成が行われるためです(キャッシュや条件付きGETが機能していればこの限りではありません)。 Ajax モジュール化を利用すれば、サイドバーの情報は非同期で表示させられるので、ユーザはページをストレスなく閲覧することが可能になります。
- 再構築時間の削減
- アーカイブに依存しないリストの生成(今回はここに言及しません)
再構築時間は PHPモジュール化と同じ効果があります。
|
人気Blogサーチ[xoops] | technorati |






コメントする
(初めてのコメントの時は、コメントが表示されるためにこのブログのオーナーの承認が必要になることがあります。承認されるまでコメントは表示されませんのでしばらくお待ちください)