Per API auf externer Seite Warenkorb / Merkzettel anzeigen

Hallo, ich möchte Website + Shop trennen, trotzdem auf der Webseite per Icons zeigen, ob auf der Shopseite der Merkzettel / Warenkorb gefüllt ist und wenn ja mit jeweils wievielen Artikeln. Ist der Warenkorb seperat abzufragen oder kann man dafür die letzte offenen Bestellung verwenden? Ist der Merkzettel auch über die API abzufragen? Danke Falk

Hast du dir die API angeschaut? https://developers.shopware.com/develop … /rest-api/ Ohne weiteres ist das nicht möglich.

Was heisst “ohne weiteres”? Geht es denn auf umwegen? Wenn es die API nicht direkt hergibt wären noch zwei Varianten denkbar - klar, man muss natürlich die ID des Users haben, aber das lässt sich per COOKIE oder per zumindest einmaliger ParameterÜbergabe regeln. 1. direkte Abfrage über die Datenbank mit einem einzelnen Skript 2. Nachbauen der Funktionen für die Warenkorb / Merkzettel-Anzeige auf einer leeren Seite, die man dann per iFram auf der Website einbindet Oder? Falk

Ein Cookie wird für eine Seite gesetzt. Das bringt dir also nichts, da du auf Seite A authentifiziert bist mit Cookie A, Seite B ist aber eine komplett andere. Eine Möglich wäre evtl. JWT http://jwt.io/ Ist jetzt aber nur ein erster Gedanke. Denn du musst natürlich den User übergeben, den Warenkorb usw. usw. Dazu müsste man einiges umbauen. Die Datenbank hat so ja erst einmal nichts mit der Authentifizierung zu tun, denn der eingeloggte User wird ja in einer Session/Cookie gespeichert.

Über die API geht das meines Wissens nicht. Das mit dem Cookie funktioniert, sofern es sich um dieselbe Domain handelt (wir haben bei einem Projekt unter www.domain.de ein CMS und unter www.domain.de/shop Shopware). In unserem Fall nutzen wir für CMS: a) die IFRAME-Lösung, um den Login-Status anzuzeigen b) den Cookie und greifen dann auf die Shopware-MySQL-Datenbank zu, um den eingeloggten Kunden gegen eine User-Tabelle im CMS zu matchen Grüße, Sven

Ja, im “schlimmsten” Fall kann man doch auch auf der Shop-Seite alle Links auf die Website mit einem GET-Parameter versehen und damit die UserID an die Website übergeben, von mir aus auch gehasht, damit die ID nicht im Klartext übermittelt wird. Wenn man dann weiß, wie die DB-Abfrage für Cart / Merkzettel funktioniert, dann sollte das doch relative einfach hart mit der Einbindung eines entsprechenden iFrames möglich sein. Oder man kriegt das mit CrossDomain PHP Sessions hin: http://stackoverflow.com/questions/1339 … p-sessions Falk

Wenn du die IFRAME-Lösung nimmst, musst du keine IDs/Sessions übergeben. Du brauchst (auf der Shopware-Domain) lediglich ein Plugin, das die von dir gewünschten Informationen anzeigt (da es auf der Shopware-Domain liegt, hat es ja alle Session-Infos etc.). Die Ausgabe des Plugins zeigst du dann im IFRAME an.