MTって、記事数が多くなってくると再構築が遅いですよね。
そういう時に使っておくと便利なのが「モジュールのキャッシュ」という機能です。
テンプレートモジュールやウィジェットを再構築したものをキャッシュしとけば、再構築が早いんですね^^
例えば、このサイトの構成を大雑把にみると、
右の図のようになってます。
そのうちヘッダーやサイドバー等、色を付けている部分は、メインページ、エントリーページなどにも共通する部分です。
通常はページ毎全て構築していくのですが、
MTでは共通部分の構築は最初の1回だけにして、
あとは使い回すことで構築を早くするわけです。
結構便利ですね^^
ただ、注意点もあります。
気づかないままだと、ユーザビリティ的にもSEO的にも問題が発生してしまいます。
まずは使い方から説明します。
「モジュールのキャッシュ」の使い方
まず、「設定」の「全般」に行き、モジュールのキャッシュの設定を有効にします。
そして次に、各テンプレートモジュールとウィジェットを表示し、それぞれのキャッシュ方法を設定します。
下の方の「テンプレートの設定」を押すと、下のように設定するところが現れますので、
3つの選択肢のうち、いずれかを選びます。
デフォルトでは「キャッシュしない」となっています。
これは、通常通り、ページ毎再構築するということです。
2番目は指定した時間だけキャッシュするというものですね。
そして3番目が、最初に構築した共通部分をキャッシュし、全ての再構築が終わっってから無効にするというものです。
キャッシュしたものをどこで使い回すかどうかは選ぶことができます。
特に「ブログ記事」や「カテゴリ」、「ウェブページ」など、ページ数が多いところで使い回すと効果ありそうですね^^
ただ、なぜこのように全てで使い回すのではなく、選べるようになっているのかは、
次に示す、注意すべき点があるからです。
モジュールのキャッシュで注意したいところ
お気づきの方もいるかとは思いますが、最初に再構築して後は使い回すということは、
MTEntriesのようなMTタグで、モジュールでは共通でもページ毎に内容が変わる場合、
最初のページを構築した時にモジュールをキャッシュしてしまい、全てのページで同じものが出力されてしまいます。
例えば僕の場合はヘッダーをMTifで判別し、titleタグの中を変えていますが、
MTが最初にこの記事を構築すると、全てのページでtitleタグが
「MTの再構築を早くする「モジュールのキャッシュ」の注意点」
となってしまうわけです。
そうなると、検索エンジンではタイトルが重複しているものと判断されてしまいますし、
もしグルメ関係で検索してきた人がこのタイトルを見ても、ブログに入って来ませんよね。
しかし、titleタグは通常自動で設定しているものなので、
ブログを書いている側はtitleタグが固定されてしまっているのになかなか気が付きません。
使い方を間違ってしまうと、恐ろしいことになってしまいますね^^;