Neu Plugin zum Ergänzen der ShopID

css_evo-con

Neues Mitglied
8. Oktober 2021
1
0
Ich möchte ein Plugin für den Connector erstellen, das die id_shop einer Besellung als Attribut an den übertragenen customerOrder Datensatz anhängt. Leider passiert nichts. Ich habe im Ordner plugins den Ordner multishop angelegt und darin die Datei Bootstrap.php mit folgenden Inhalt:

PHP:
<?php

namespace multishop;

use jtl\Connector\Core\Logger\Logger;
use jtl\Connector\Event\CustomerOrder\CustomerOrderAfterPullEvent;
use jtl\Connector\Model\CustomerOrderAttr;
use jtl\Connector\Model\Identity;
use jtl\Connector\Plugin\IPlugin;
use Symfony\Component\EventDispatcher\EventDispatcher;

//Every plugin which occurs in the connector/plugins is registered by the connector
class Bootstrap implements IPlugin
{
    //Using the registerListener function, provided by the PluginInterface to define when the plugin should call what method
    public function registerListener(EventDispatcher $dispatcher)
    {
        //Using static variables to define the wanted event name which is used to determine when the plugins is called
        $eventName = CustomerOrderAfterPullEvent::EVENT_NAME;

        $dispatcher->addListener($eventName, [$this, "handle"]);
    }

    public function handle(CustomerOrderAfterPullEvent $event)
    {
        Logger::write('Handler called', Logger::DEBUG, 'plugin');
        $intPSOrderID = (int)$event->getCustomerOrder()->getId()->getEndpoint();

        $intShopID = \Db::getInstance()->getValue('
            SELECT o.id_shop FROM ps_orders o WHERE o.id_order = '.$intPSOrderID.'
        ');

        $event->getCustomerOrder()->addAttribute(
            (new CustomerOrderAttr())
            ->setId(new Identity('ShopID'.$intShopID))
            ->setCustomerOrderId($event->getCustomerOrder()->getId())
            ->setKey('ShopID')
            ->setValue($intShopID)
        );
    }
}

Muss ich noch etwas anderes machen um das Plugin zum laufen zu bekommen? Oder fällt euch ein Fehler in meinem Code auf? Das ist mein erster Kontakt mit einem Connector-Plugin, ich bin für jeden Hinweis dankbar.
 

Immanuel

Gesperrter Benutzer
24. August 2016
1.542
329
Hallo @css_evo-con und herzlich willkommen im Forum!

Hab gerade mal nachgeschaut, der Dateiname muss bootstrap.php (komplett klein geschrieben) sein.

PS: Code sieht auf den ersten Blick in Ordnung aus.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Google Shopping (Plugin) Export immer leer Allgemeine Fragen zu JTL-Shop 4
Neu Sendcloud Plugin immer im Tab fehlerhaft - Lizenz abgelaufen Plugins für JTL-Shop 0
Neu Texteditor Hinweis Plugin von Webstollen Plugins für JTL-Shop 0
Neu Welches PlugIn für ein besseres Google Ranking? Plugins für JTL-Shop 2
Neu Händlerbund Plugin: "Zahlung und Versand" wird nicht automatisch übernommen Plugins für JTL-Shop 2
Neu Die Zahlungsart SOFORT ist eine Plugin-Zahlungsart für Mollie. Das zugehörige Plugin ist jedoch nicht installiert! Allgemeine Fragen zu JTL-Shop 0
Neu Plugin PayPal - capture failed for method PayPal Checkout Plugins für JTL-Shop 0
Neu Plugin-Update 2.4.1: JTL Exportformat Google Shopping Plugins für JTL-Shop 6
Neu Paypal Plugin läßt sich nicht installieren - SQL Fehler Plugins für JTL-Shop 2
Neu Paypal Plugin 2.0.1 Merachant JTL-Shop - Fehler und Bugs 10
Neu Plugin Fehler JTL-Shop - Fehler und Bugs 7
Neu PayPal Plugin 2.0 - Vaulting - Ist IMMER ein neues Onboarding nötig? Wie prüfen, ob OK? Plugins für JTL-Shop 6
Neu Plugin - Kindartikel in der Artikelübersicht anzeigen - SHOP-475 Plugins für JTL-Shop 8
Neu 🌟Neues Plugin: Produkt FAQ Plugins für JTL-Shop 0
Neu Suche Plugin: Zusatzartikel mit einfacher Variationsauswahl Plugins für JTL-Shop 8
Neu Neues Plugin - Der ultimative Super-Slider Plugins für JTL-Shop 0
Neu Plugin "Verwalte deinen JTL Shop mit Excel Dateien" geht wohl nicht mit JTL-Shop 5.4.1 Plugins für JTL-Shop 1
Neu Update 5..50 + Plugin: JTL Exportformat Google Shopping Export Stopp JTL-Shop - Fehler und Bugs 6
Neu JTL-Shop 5.5.0 PayPal Plugin Installation / Updates von JTL-Shop 2
Neu Update auf Shop 5.5.0 in Kombination mit Plugin "AmazonPay" nicht möglich - 500er Fatal Error JTL-Shop - Fehler und Bugs 13
Neu Test Plugin lässt sich weder installieren, noch löschen Plugins für JTL-Shop 0
Neu ChatGPT Plugin Plugins für JTL-Shop 0
Neu Plugin Produktsicherheitsverordnung (GPSR) Plugin für den JTL-Shop 5 nicht PHP 8.4 fähig Technische Fragen zu Plugins und Templates 4
Neu Übermittlung der DHL Retourenetiketten ins DHL Geschäftsportal zum Druck JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu OS-Plattform wurde zum 20.07.2025 abgeschaltet. Smalltalk 2
Neu Versandbenachrichtigungen zum Lieferschein werden nicht mehr gesendet. JTL-Wawi - Fehler und Bugs 1
Keine Datenübertragung zum Shop möglich / Kundenkonto migrieren Onlineshop-Anbindung 10
Neu DotLiquid zum auslesen Attribut für BrowseNodeID Amazon-Lister - Ideen, Lob und Kritik 3
Bedeutung der Farben (Grün/Orange) in der Auftragsmaske + Frage zum Fehlbestand JTL-Wawi 1.10 4
Neu Mit Ameize nutze: Freie Position zum Auftrag hinzufügen verursacht Fehler JTL-Ameise - Fehler und Bugs 3
Neu zum 30. Juni 2025 wird der Amazon Lister 1.0 eingestellt JTL-ShippingLabels - Fehler und Bugs 5
Neu Nach updatet auf 5.5.1 - erscheinen über dem Header 3 links Zum Hauptinhalt springen Zur Suche springen Zum Menü springen Installation / Updates von JTL-Shop 19
Neu Frage zum Onlineshop-Abgleich - HOOK_ARTIKEL_XML_BEARBEITEINSERT Technische Fragen zu Plugins und Templates 0
Neu Zahlungen: Doppelte Zahlungseingänge führen zum Chaos JTL-Wawi - Fehler und Bugs 0
Neu JTL-Shop zum JTL-WAWi anbinden JTL-Wawi - Fehler und Bugs 12
Neu Vorlage zum Export von Aufträgen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 6
Neu Shopify Connector - Verbindungsfehler zum Shop & Kein Abgleich mehr möglich Shopify-Connector 14
Neu Einkaufspreis bei Ameise-Import über "Lagerbestände" ergänzen JTL-Ameise - Ideen, Lob und Kritik 9

Ähnliche Themen