回答:
テーマ関数はテーマレジストリによって処理されます。新しいテーマ関数を取得するためにサイトのすべてのキャッシュを再構築(またはさらに悪いことに無効化)することは不要であり、やり過ぎです。
できることは、Develモジュールを使用して、ページをリロードするたびにテーマのレジストリを再構築することです。インストールしたら、設定→開発→開発設定に進みます。そこで、「ページを読み込むたびにテーマレジストリを再構築する」をチェックし、「設定を保存」ボタンを押します。開発が完了したら、忘れずにチェックを外してください(または、Develを完全に無効にしてください)。
デフォルトのキャッシュバックエンドを実際には何もしないものに置き換えることができます。これをsettings.phpファイルに追加するだけです:
if (!class_exists('DrupalFakeCache')) {
$conf['cache_backends'][] = 'includes/cache-install.inc';
}
// Default to throwing away cache data.
$conf['cache_default_class'] = 'DrupalFakeCache';
// Rely on the DB cache for form caching - otherwise forms fail.
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
念のため、[パフォーマンス]ページでキャッシュの有効期限を[なし]に設定します。
実際、これをsettings.local.phpファイルで使用します。このファイルが存在する場合は、settings.phpファイルの下部に含まれるため、ライブまたはステージング環境のdev.phpを開発環境に同期することができます。間違ったデータベース設定の使用、誤ってdev設定をプッシュするなど
settings.php:
if (file_exists(__DIR__ . '/settings.local.php')) {
require_once __DIR__ . '/settings.local.php';
}
$conf['cache_class_cache_metatag'] = 'DrupalFakeCache';
すべてのキャッシュを完全にオフにすることはできません。あなたが実際にやったなら、それはあなたの進歩を遅らせることになるので、はるかに。それが実際にキャッシュをクリアするのにかかる時間を考慮して、だと何を、すべて単一のページのロードは次のようになります。
利用可能なエンティティ、フィールド、フォーム、実装されたフックなどに関する情報を構築するために実行中のフックは非常に多く、現在一度だけ実行する必要があるため、それを防止したくありません。
Drupalに慣れると、すぐにキャッシュクリアが必要なものを学習し、おそらく管理メニューのショートカットまたはのいずれかに慣れるでしょうdrush cc all
。これはもはや問題ではありません。
この例のアプローチはバージョンに依存しません。コードはDrupal 7用です。
/programming/4436496/drupal-disable-css-cache/41776131#41776131