Hallo,
ich entwickel derzeit ein Plugin welches aus 2 einzelnen Plugins besteht. Es gibt eine Art Container-Plugin (A) und dann gibt es ein Plugin (B) welches bestimmte Sourcen aus Plugin (A) nutzen soll. Ich möche dies über Namesspaces lösen.
Als Code habe ich folgendes:
PluginA / Bootstrap.php
class Shopware_Plugins_Backend_PluginA_Bootstrap extends Shopware_Components_Plugin_Bootstrap {
...
public function afterInit() {
$this->Application()->Loader()->registerNamespace('Shopware\Plugina', $this->Path());
}
...
}
PluginA / Lib/Client.php
namespace Shopware\Plugina\Lib;
class Client {
...
}
Plugin B / Bootstrap.php
class Shopware_Plugins_Backend_PluginB_Bootstrap extends Shopware_Components_Plugin_Bootstrap {
...
public function afterInit() {
$this->Application()->Loader()->registerNamespace('Shopware\Plugina', $this->Path().'../PluginA'); // Komplette Angabe mit DOCUMENT_ROOT funktioniert auch nicht
}
...
}
Wenn ich nun über einen Controller über PluginB auf den Client zugreifen möchte, erhalte ich immer die Meldung:
PHP Fatal error: Class ‘Client’ not found
Gibt es hier einen Lösungsansatz oder übersehe ich etwas grundlegendes?
Grüße