PHP Code / Skript in Erlebniswelt in Shopware 6 ausführen

Guten Tag :slight_smile:

ich würde gerne ein PHP Skript in einer Erlebniswelt in Shopware 6 ausführen.

Im Standard ist nur HTML/JS möglich.

Die Suche im Shopware Store verlief ergebnislos.

Der Shopware Support konnte mir hier nicht weiterhelfen. „Die Frage übersteigt leider den Leistungsumfang des technischen Supports“

Gibt es hier jemanden, der mir einen Ansatz geben kann um PHP Code in einer Erlebniswelt ausführbar machen zu können?

Vielen Dank für die Unterstützung.

Viele Grüße

Robert

Hi Robert,

also grundsätzlich: PHP ist eine serverseitige Sprache. Das heißt, der Code läuft nicht im Browser, sondern auf dem Server, bevor die Seite überhaupt beim Besucher ankommt. Die Erlebniswelten in Shopware 6 sind aber frontendbasiert. Da kommt nur HTML, CSS und JavaScript zum Einsatz. Deshalb kannst du da kein PHP direkt ausführen, quasi einfach, weil es technisch nicht mehr da ist, wenn der Browser das Ganze rendert.

Was du stattdessen brauchst, ist ein kleiner Umweg:

Wenn du z. B. ein Kontaktformular, eine kleine Datenverarbeitung oder irgendeine Logik auf PHP-Basis brauchst, dann machst du das über ein eigenes Plugin oder eine API-Route in Shopware. Dein PHP-Code wird also in einen eigenen Controller gepackt, Shopware stellt dir dafür alles bereit. Den rufst du dann mit JavaScript aus der Erlebniswelt heraus auf bspw. per fetch…

Also als Beispiel:
Dein Plugin stellt eine Route /custom-api/feedback bereit, da liegt deine PHP-Logik.
In der Erlebniswelt machst du dann einen JS-Fetch dorthin, holst dir die Antwort und zeigst sie an oder schickst Daten hin.

Das ist glaube ich der einfachste Weg, wie man PHP und Erlebniswelten trotzdem kombinieren kann, ohne gegen das System zu arbeiten.

Gruß
Tom

2 „Gefällt mir“