コンテンツを保存すると同時に Views のキャッシュをクリアする方法
久しぶりの投稿です ... 最近は Twitter ばかりなので、よろしければそちらもどうぞ。 http://twitter.com/pineray
さて、Drupal でサイトを構築すると、だんだん重くなってきてパフォーマンスがひどい状態になります。
それを改善するために、コアやサードパーティモジュールで提供されているキャッシュ機能を活用するわけですが、それぞれ連携されていない部分もあったりして、ちょっとした工夫が必要になります。
たとえば、Views のキャッシュを使用していると、コンテンツを投稿したのにビューには反映されていない、ということが起こってしまいます。
今回は、コンテンツを保存すると同時に Views のキャッシュをクリアする方法について解説します。
Views の他に必要なのは Rules モジュールです。
- 管理画面の「ルール -> トリガのルール -> ルールを新規追加」で新しいルールを作成します。
- ラベルは適当に。イベントは「コンテンツを保存しようとしている」を選択し、「変更を保存」ボタンをクリックして次に進みます。
- 「アクションを追加」リンクをクリックします。
- 「追加するアクションを選択」で「独自のPHPコードを実行」を選択し、「次」ボタンをクリックします。
- 「PHPコード」の欄に以下のコードを挿入します。
cache_clear_all('*', 'cache_views_data', TRUE);
cache_clear_all('*', 'cache_views', TRUE); - 「保存」ボタンをクリックして完了です。
これで、コンテンツを作成したり更新すると、Views のキャッシュもクリアされ、投稿したコンテンツがすぐさまビューに反映されるようになります。
| 固定リンク
「Drupal」カテゴリの記事
- さくらレンタルサーバーにDrupal7をインストールできない ...(2014.04.18)
- Drupal Documentation の The files directory を翻訳しました(2011.03.09)
- Drupal Documentation の Clean URLs を翻訳しました(2011.03.08)
- Drupal Documentation の翻訳を始めました(2011.03.03)
- コンテンツを保存すると同時に Views のキャッシュをクリアする方法(2010.04.23)
この記事へのコメントは終了しました。
コメント