web-dev-qa-db-ja.com

Drupal 7に挿入されたノードの後に​​ビューキャッシュをクリアする

ノード詳細のリストをリストするビューを表示しました。ビューキャッシュを30分間設定しました。
ノードを挿入するときに特定のビューのキャッシュをクリアしたいのですが。以下のコードでキャッシュをクリアしようとしましたが、ページに違いはありません。

function phponwebsites_node_insert($node) {
 if ($node->type == 'tasks') {
   views_invalidate_cache();
 }
}
4
Guru

次のスニペットはあなたのために働くはずです

cache_clear_all('MY_VIEW_NAME:', 'cache_views_data', TRUE);
5
Andrew

ビューの表示キャッシュをクリアするには、これを試してください。

$view = views_get_view('VIEW-NAME');
$view->set_display('VIEW-DISPLAY');
$cache = $view->display_handler->get_plugin('cache');
$cache->cache_flush();
1
mgzrobles

cache_clear_all 関数を参照してください。ビューのキャッシュのみをクリアする必要がある場合は、これを試してください。

cache_clear_all('*', 'cache_views', TRUE);

Edit:Try Cache Action module。 Rules モジュールに依存します。

キャッシュアクションは、drupalキャッシュをクリアするためのルールアクションを提供します。

現在、次のアクションを提供しています。

クリアDrupalキャッシュビンクリアCSS/JSキャッシュクリア特定のビューのキャッシュをクリアクリア特定のパネルページのキャッシュをクリアクリア特定のミニパネルのキャッシュをクリア

0
Sumit Madan