In der heutigen digital-first Welt verlagern Unternehmen zunehmend ihre Abläufe in die Cloud. Von der Datenspeicherung bis zur Kundenkommunikation sind Cloud-Anwendungen zum Rückgrat moderner Organisationen geworden und bieten Flexibilität, Skalierbarkeit und Effizienz, die traditionelle Software einfach nicht erreichen kann. Das gilt für Onlinehändler in der Schweiz genauso wie in Deutschland, besonders für Shops in der Shopware Cloud.
Kostenlose 15-minütige Erstberatung direkt mit unseren Experten.
App Scripts sind kleine Programme in Twig-Syntax, die eine Shopware-App direkt im Shop ausführt, ohne eigenen Server. Sie reagieren auf Hooks wie Warenkorbberechnung oder Seitenaufruf und erlauben Logik, die sonst nur Plugins möglich war.
Das App-System von Shopware 6 trennt Erweiterungen vom Shop: Apps laufen ausserhalb und kommunizieren über API und Webhooks. Das hat einen Nachteil: Logik, die während eines Requests laufen muss, etwa ein Aufschlag im Warenkorb, liess sich so nicht umsetzen. App Scripts schliessen diese Lücke seit Shopware 6.4.8. Eine App liefert Script-Dateien mit, Shopware führt sie in einer abgesicherten Twig-Umgebung aus, synchron und innerhalb des Shops. Dadurch funktionieren App Scripts auch in der Shopware Cloud, wo kein eigener PHP-Code ausgeführt werden darf.
Jedes Script hängt an einem Hook, der festlegt, wann es läuft und welche Daten es sieht. Die wichtigsten:
Die Scripts liegen in der App unter Resources/scripts//; der Ordnername bestimmt den Hook.
Ein Script ist eine Twig-Datei, die mit den Daten des Hooks arbeitet und über Services auf Shopware zugreift. Ein Beispiel für einen Mindermengenzuschlag im Warenkorb:
{# Resources/scripts/cart/mindermengenzuschlag.twig #}
{% if hook.cart.price.totalPrice < 30 %}
{% do services.cart.products.add("ID_DES_ZUSCHLAGARTIKELS") %}
{% endif %}
Verfügbare Services sind unter anderem services.repository zum Lesen von Entitäten, services.cart für Warenkorbaktionen, services.config für die App-Konfiguration, services.response für eigene Endpunkte und services.writer für Schreibzugriffe über den Data Abstraction Layer. Welche Services ein Hook bereitstellt, dokumentiert Shopware in der Script-Referenz.
Plugins laufen als PHP im Shop, haben vollen Zugriff auf Symfony-Services, Events und Datenbank und sind bei komplexer oder performancekritischer Logik die bessere Wahl. App Scripts gewinnen, wenn die Erweiterung als App vertrieben werden soll, in der Cloud laufen muss oder die Logik überschaubar ist. Viele Agenturen kombinieren beides: App für Cloud-Kunden, Plugin für selbst gehostete Projekte. Wie wir Erweiterungen umsetzen, lesen Sie auf unserer Seite zur Shopware-Plugin-Entwicklung; den Unterschied der Formate erklärt der Eintrag App: Cloud-natives Plugin-Format.
Sie sind unsicher, ob App Script oder Plugin besser passt? solution25 berät Händler in der Schweiz und in Deutschland bei dieser Entscheidung und setzt beides um. Sprechen Sie uns für eine kostenlose Erstberatung an.
Twig, Event (Hook), Webhooks, Erweiterungs-SDK und Store-Erweiterungen. Alle Begriffe im Shopware-Wörterbuch.