hmm,
anscheinend[0] sind plugin konfiguration[1] änderungen erst nach leeren der “shopware konfiguration” cache wirksam. ist diese ne feature oder bug?
falls ne feature, könnte jemand bitte zeigen (bzw. in die dokumentation addieren) wie wir die “shopware configuration” von unsere plugin aus beim konfiguration änderungen speichern (so das der user dies nicht manuell machen muss).
falls ne bug, gibts schon ne ticket?
(wäre schon schön wenn der plugin-author oder user um diese nicht kümmern müsste)
ps. getested mit shopware 5.2.15
[0] https://github.com/hlb-schmidt/FooConfigTest
[1] https://developers.shopware.com/developers-guide/plugin-system/#plugin-configuration-/-forms
Hallo,
falls noch relevant. Ich hab dafür einen EventSubscriber geschrieben:
class ClearCacheOnConfigUpdate implements SubscriberInterface
{
/**
* @var string
*/
private $pluginName;
/**
* @var CacheManager
*/
private $cacheManager;
/**
* SomeSubscriber constructor.
*/
public function __construct(string $pluginName, CacheManager $cacheManager)
{
$this->pluginName = $pluginName;
$this->cacheManager = $cacheManager;
}
public static function getSubscribedEvents(): array
{
return [
'Enlight_Controller_Action_PostDispatchSecure_Backend_Config' => 'onPostDispatchConfig'
];
}
public function onPostDispatchConfig(\Enlight_Event_EventArgs $args): void
{
/** @var Shopware_Controllers_Backend_Config $subject */
$subject = $args->get('subject');
$request = $subject->Request();
// If this is a POST-Request, and affects our plugin, we may clear the config cache
if($request->isPost() && $request->getParam('name') === $this->pluginName) {
$this->cacheManager->clearByTag(CacheManager::CACHE_TAG_CONFIG);
}
}
}
Grüße
alphapab