Marketplace Redirect: Installation
Installation des Sylius-Plugins Marketplace Redirect: Composer über Packeton, Bundle, Admin-Routen, Setup-Befehl, Update und Deinstallation.
Marketplace Redirect: Installation
Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.
Composer
Private Repositories werden über Packeton verwaltet (
https://packeton.markus-michalski.net). Die Zugangsdaten bekommst du nach dem Lizenzkauf.
{ "repositories": [{ "type": "composer", "url": "https://packeton.markus-michalski.net" }] }
composer require mmd/sylius-marketplace-redirect-plugin
Nach dem composer require:
-
Bundle in
config/bundles.phpregistrieren:Mmd\SyliusMarketplaceRedirectPlugin\MmdSyliusMarketplaceRedirectPlugin::class => ['all' => true], -
Admin-Routen importieren, zum Beispiel in
config/routes/mmd_marketplace_redirect.yaml. Ohne den Import fehlen der Menüpunkt „Marketplace redirect“ und sein Bildschirm, alles andere funktioniert weiter:mmd_sylius_marketplace_redirect_admin: resource: "@MmdSyliusMarketplaceRedirectPlugin/config/routes/admin.yaml" -
Setup-Befehl ausführen:
bin/console mmd:marketplace-redirect:setupDer Befehl führt nur die noch offenen Migrationen dieses Plugins aus, nie die der App oder anderer Plugins. Dabei entstehen zwei Tabellen,
mmd_sylius_marketplace_redirect_linkundmmd_sylius_marketplace_redirect_channel_settings. Er ist idempotent: Ohne neue Migration meldet er „Migrations are already up to date.“ und tut nichts, du kannst ihn also nach jedemcomposer updatelaufen lassen. Zusätzlich prüft er, ob die Routen aus Schritt 2 importiert sind, und gibt andernfalls den Snippet aus, ohne je inconfig/zu schreiben. Sind Migrationen von Sylius selbst noch offen, bricht er ab und bittet dich, zuerstbin/console doctrine:migrations:migrateauszuführen. In Skripten und Deployments gibst du--no-interactionan, sonst fragt Doctrine vor der Ausführung nach einer Bestätigung.
Die Twig-Hooks, das Doctrine-Mapping, das Grid und die API-Ressource registriert das Bundle selbst. Du musst nichts nach config/packages/ legen: Das Plugin hat keine Bundle-Konfiguration, die Einstellungen liegen in der Datenbank und werden im Admin gepflegt (siehe Konfiguration). Ein assets:install ist nicht nötig, das Shopware-Logo ist als Data-URI im Template eingebettet.
Führe den Setup-Befehl aus, bevor jemand die Karte „Externer Kauf“ im Admin benutzt. Bis dahin zeigen Produktseiten zwar den normalen Button, aber die Karte kann nichts speichern: Bei einem bestehenden Produkt wird die Eingabe ohne Meldung verworfen, und ein neues Produkt mit gewähltem Marktplatz lässt sich nicht anlegen.
Update
composer update mmd/sylius-marketplace-redirect-plugin
bin/console mmd:marketplace-redirect:setup
bin/console cache:clear
Deinstallation
- Gespeicherte Links und Channel-Einstellungen sind in den beiden Tabellen abgelegt. Möchtest du sie behalten, sichere die Tabellen vorher.
- Migrationen zurückrollen, solange das Bundle noch registriert ist, pro Version einzeln, die neueste zuerst:
bin/console doctrine:migrations:execute --down "Mmd\SyliusMarketplaceRedirectPlugin\Migrations\Version20261002140000" bin/console doctrine:migrations:execute --down "Mmd\SyliusMarketplaceRedirectPlugin\Migrations\Version20261002120000" - Den Route-Import (
config/routes/mmd_marketplace_redirect.yaml) und den Bundle-Eintrag inconfig/bundles.phpentfernen. - Paket entfernen:
composer remove mmd/sylius-marketplace-redirect-plugin