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.
) 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.