Hallo,
würde gerne auf ein Plugin prüfen. In der alten Plugin-Struktur ging das mit
assertRequiredPluginsPresent
Wie macht man das nun in der neuen Plugin-Struktur?
Hallo,
würde gerne auf ein Plugin prüfen. In der alten Plugin-Struktur ging das mit
assertRequiredPluginsPresent
Wie macht man das nun in der neuen Plugin-Struktur?
Schau Mal hier https://developers.shopware.com/developers-guide/plugin-system/#require-other-plugins
Hi Shyim, vielen Dank für den Link. So wie das aussieht betrifft das aber die plugin.xml. Ich würde gerne in der Plugin PHP Datei auf andere Plugins abfragen.
@mdsw
Weiß nicht ob das noch aktuell ist, aber ich würde die
assertRequiredPluginsPresent
einfach in 5.2 Version umsetzen.
protected function assertRequiredPluginsPresent(array $plugins)
{
$pluginRepository = Shopware()->Models()->getRepository(\Shopware\Models\Plugin\Plugin::class);
foreach ($plugins as $plugin) {
$test = $pluginRepository->findOneBy(['name' => $plugin, 'active' => 1]);
if (!$test) {
return false;
}
}
return true;
}
Die Funktion könntest in deiner 5.2 Bootrap-Plugin einbauen und verwenden. Vielleicht macht sie Shopware oder ein Merge-Request Erfahrener Community-Programmierer (Shyim ) ja mal in die „engine/Shopware/Components/Plugin.php“ rein. Dann könnte man sie zumindest in der 5.2-Bootstrap so verwenden, wie bisher auch.
Wenn du nur nachschauen möchtest, ob ein Plugin vorhanden ist, kannst natürlich das ganze auch in 2 Zeilen machen.
$plugin = Shopware()->Models()->getRepository(\Shopware\Models\Plugin\Plugin::class)->findOneBy(['name' => 'NeedetPlugin', 'active' => 1]);
if (!plugin) {
return false;
})
/**
* Do some stuff, when "NeedetPlugin" ist active
*/
Gruß
daMardl
Ich hab mal einen Merge-Request gestellt. Mal schauen.