Plugin geht nur “aktiviert / deaktiviert”.
Wie es oft gemacht wird: (Der Sprachshop bekommt auch einen Tab in der Plugin-Config)
In der config.xml vom Plugin ein Element, z.b. Dropdown mit “Aktiv: Ja / Nein” und Scope:shop
Im Plugin an den relevanten Stellen - wo also etwas gemacht wird (event?) - die Config zum Shop lesen und den Wert auslesen. Wenn “nein”, dann Code nicht weiter ausführen “return”
z.B.
pluginIsActive
Plugin-Funktion im Shop aktiv
1
Aktiviert die Pluginfunktionen im aktuellen Shop.
public function onPostDispatchSearch(\Enlight_Controller_ActionEventArgs $args)
{
/** get Plugin-Configuration */
$pluginConfig = $this->getConfiguration();
if (!(bool) $pluginConfig['pluginIsActive']) {
return;
}
/* Dein Code */
}
private function getConfiguration() {
/** return Plugin-Configuration from current shop */
return $this->container->get('shopware.plugin.cached_config_reader')->getByPluginName($this->getName(), $this->container->get('Shop'));
}