在 modx 革命中清除缓存的系统设置
Clearing cached system settings on modx revolution
我有一个片段可以通过更新和保存 modSystemSetting 对象来更新一些系统设置。我注意到旧设置仍然来自缓存。
清除缓存有效:
$cacheManager = $modx->getCacheManager();
$cacheManager->clearCache();
但这会清除整个缓存,这是不好的。我怎样才能只清除更新的设置?清除所有系统设置也可以。
检查 modcachemanager.class.php
中的 refresh 函数,查看每个 $providers
.
对于 system-settings
尝试从 $cacheManager->generateConfig()
开始,然后从那里看。也许您需要的不仅仅是系统设置,例如 context settings 等。
如果您更进一步,请使用自定义缓存结帐。您可以删除缓存中的特定键 $cacheManager->delete($key)
。请参阅 Programmatic (Custom) Caching
我有一个片段可以通过更新和保存 modSystemSetting 对象来更新一些系统设置。我注意到旧设置仍然来自缓存。
清除缓存有效:
$cacheManager = $modx->getCacheManager();
$cacheManager->clearCache();
但这会清除整个缓存,这是不好的。我怎样才能只清除更新的设置?清除所有系统设置也可以。
检查 modcachemanager.class.php
中的 refresh 函数,查看每个 $providers
.
对于 system-settings
尝试从 $cacheManager->generateConfig()
开始,然后从那里看。也许您需要的不仅仅是系统设置,例如 context settings 等。
如果您更进一步,请使用自定义缓存结帐。您可以删除缓存中的特定键 $cacheManager->delete($key)
。请参阅 Programmatic (Custom) Caching