$discardedLessThemes vs. Shopware: Es könnte so einfach sein

Ich mag das Theme-Konzept von Shopware ja eigentlich. Es gibt ein Bare-Theme, das außer HTML nichts enthält. Kein Styling, kein Javascript, einfach nur reines HTML.
Darauf aufbauend gibt es ein Responsive-Theme das, wie der Name schon sagt, responsive ist und über Variablen im Backend farblich auch ein bisschen angepasst werden kann. Das ist für den Wohnzimmerhändler sicherlich toll und man sieht auch mittlerweile unzählige Shops, die das Responsive-Theme nutzen und außer Logo und Farbe nichts geändert haben. Kann man machen, ist dann halt kacke.

Für unsere Ansprüche ist das natürlich nichts. Wir haben ein komplett selbst gestaltetes Theme, das auch nach allen Regeln der Kunst umgesetzt werden soll. Und da es so ganz anders ist als das Default-Theme wäre es natürlich gut, wenn man nicht den ganzen CSS-Ballast, den das Responsive-Theme mitbringt, rumschleppen müsste.

Weil sind wir doch mal ehrlich: Shopware 5 und damit die Grundlage des Responsive-Themes ist von 2015, der letzte Commit auf das Repo von pocketgrid, welches das Responsive-Theme nutzt, ist sogar noch ein Jahr länger her. Mittlerweile haben wir echtes CSS Grid und es wäre fahrlässig, das nicht zu nutzen.

Nur: Der Weg von

zu

ist ganz schön steinig und unnötig beschwerlich.

Vom Bare-Theme erben

Funktioniert total gut. Also bestimmt. Wenn man einen frisch installierten Shop hat ohne ein einziges Plugin. Das dürfte aber eher die Ausnahme sein. Schon bei einem Shop, der lediglich das PayPal-Modul installiert hat, scheitert das Kompilieren des Themes:

Während der Bearbeitung von Shop "Demoshop" ist ein Fehler aufgetreten: variable @tabletViewportWidth is undefined in file custom/plugins/SwagPaymentPayPalUnified/Resources/views/frontend/_public/src/less/_modules/index/sidebar.less in sidebar.less on line 11, column 30 09| } 10| 11| @media screen and(min-width: @tabletViewportWidth) { 12| .paypal--sidebar { 13| .unitize(margin-bottom, 20); 14|

Öh ja, das ist so semi-gut. Kann man prinzipiell nachrüsten, sobald man aber noch ein paar komplexere Plugins am Start hat wie beispielsweise die Advanced Promotion Suite knallt es auch bei den Farbwerten, die man eigentlich über das Backend konfigurieren kann (aber eben nicht beim Bare-Theme).

$discardedLessThemes beim Responsive-Theme

Also vom Responsive-Theme erben. Seit Shopware 5.4 gibt es da die Möglichkeit, sowohl in den Vererbungspfad des CSS/LESS als auch das Javascripts einzugreifen. Für LESS/CSS mittels discardedLessThemes, für das Javascript mittels discardedJavascriptThemes.

Da also das Responsive-Theme eintragen und kompilieren und alles ist super. Natürlich nicht. Auch hier hat man die Rechnung ohne die Plugin-Autoren gemacht. Direkt als erstes fliegt einem wieder der Tablet-Viewport um die Ohren. Hat man sich dafür ein eigenes LESS-File angelegt knallt zumindest in unserem Fall das Amazon-Pay-Plugin. Und zwar mehrfach aufgrund des Zugriffs auf jetzt nicht mehr vorhandene Definitonen aus dem Bereich der Buttons. Also auch hier eigene LESS-Files anlegen und leere Definitionen dort eintragen.
So geht das Spielchen, das einem Marathon gleicht, munter weiter, bis alle Plugins, die noch nichts davon gehört haben, dass die Vererbung mittlerweile abschaltbar ist, zufrieden gestellt sind. Erst dann hat man für einen Shop mit diversen Plugins auch endlich eine wirklich CSS-freie Darstellung. Also quasi Bare-Theme ohne die Probleme mit den fehlenden Farbdefinitionen.

Nur: CSS-frei ist das ganze deswegen noch lange nicht, da sorgt schon jedes Plugin dafür, dass da wieder ein bisschen was zusammen kommt, aber zumindest lässt sich so der Umfang des CSS schon mal auf ca. 2500 Zeilen reduzieren, während der gleiche Shop mit Responsive-Theme auf 25.000 Zeilen kommt. Es ist noch ein weiter Weg…

Wie Vollpfosten-Versender die Kunden in die Arme von Amazon treiben…

Das ist quasi ne Fortsetzung zu Der deutsche E-Commerce versagt schon bei den Basics. Wird wohl ein Mehrteiler.

Braucht mal wieder jemand Futter, warum Amazon so beliebt beim Kunden ist? Weil viele andere Versender einfach Vollpfosten sind. Hier gleich zwei Vollpfosten des Monats August.

Ich hatte Bedarf nach mehr Ventilatoren. War ja auch mal heiß dieses Jahr. Erste Bestellung über zwei Stück des gleichen Typs am 26. Juli aufgegeben bei nem großen Elektroladen in Karlsruhe, Ware angeblich sofort lieferbar. In der Bestellbestätigung steht dann plötzlich 1. August als Liefertermin. OK, die bringen den wohl persönlich, aber egal, ist ja die nächste Woche auch noch heiß.
Meine Zahlung über PayPal wurde dann am nächsten Tag per Mail bestätigt. Kann man bei ner sofortigen Zahlungsmethode natürlich machen, ist mit einem Tag Verzug aber halt lächerlich und zeigt wie schlecht das Warenwirtschaftssystem hinten dran sein muss.
Sollte man daran noch Zweifel haben: Vier Tage nach Bestelleingang kommt ne E-Mail, dass man auch den Termin am 1. August leider reißen wird, neuer Liefertermin wäre der 13. August, man offeriert aber eine Teillieferung. Ich antworte sofort und frage wie die Teillieferung denn aussehen wird. Man braucht zwei Arbeitstage um mir zu antworten, dass das eine Standardmail vom System sei und eine Teillieferung anders als offeriert doch nicht möglich wäre. Wie schlecht bitte kann ein Warenwirtschaftssystem eigentlich sein, das vor Mailversand nicht erkennt, dass auch eine Teilmengenlieferung nicht möglich ist? Ich antworte erneut direkt, bekomme aber keine Antwort, sondern eine Rechnung. Am nächsten Tag steht ohne Versandmitteilung die Ware plötzlich auf dem Hof.
Noch einen Tag später hat sich dann sogar der Twitter-Account des Händlers, den ich zwischenzeitlich angeschrieben hatte, gemeldet. Auch mit einer Reaktionszeit von zwei Tagen. Der Händler verkauft auch über Amazon, es ist mir ein Rätsel, wie er dort die Antwortzeiten einhält während er auf allen anderen Kanälen 48 oder mehr Stunden benötigt.

Neuer Händler, gleiche Ware

Ich bin aber noch nicht fertig. Mit dem neu avisierten Liefertermin für den 13. August habe ich direkt eine Ersatzbeschaffung vorgenommen. Am 31. Juli habe ich also bei einem eBay-Händler, der mit 17.000 Bewertungen auch eher nicht aus dem Wohnzimmer versendet, eine weitere Bestellung aufgegeben, Liefertermin zwischen dem 2. und 3. August. Nachdem am 2. August dann ja aber überaschenderweise die Ware vom ersten Händler eingetroffen ist und die vom eBay-Händler noch nicht versendet gemeldet war, habe ich dort versucht den Kauf abzubrechen:

Hiermit widerrufe ich den Kauf. Der Artikel wird nicht mehr benötigt. Da er auch noch nicht versendet ist bitte Zahlung wieder auf mein PayPal-Konto gutschreiben.

Die Antwort irritierte mich dann aber:

Bitte lehnen Sie die Lieferung ab, wenn Sie bei Ihnen eintrifft, zurückhalten können wir sie leider nicht mehr.

Aha, also doch schon versendet? Einen Tag haben sie ja noch um den versprochenen Liefertermin einzuhalten. Und natürlich kam am 3. August keine Ware. Und auch die nächsten Tage nicht, weshalb ich am 6. August erneut schrieb:

Bislang ist kein Paket hier eingetroffen, obwohl das schon bis spätestens Freitag der Fall hätte sein sollen und es ja angeblich auch schon versendet ist. Bitte lassen Sie mir die Sendungsnummer zukommen, es ist etwas müßig, jeden Tag den DHL-Fahrer abpassen zu müssen, damit er das Paket ja nicht irgendwo in der Nachbarschaft abgibt, wo niemand was von der Annahmeverweigerung weiß.

Die Antwort einen Tag später ist ein Musterbeispiel für extrem schlechte Kundenkommunikation:

Leider können wir momentan aufgrund der Hitzewelle nicht alle Tickets / Anfragen zeitnah beantworten. Wir versichern Ihnen, dass wir mit Hochdruck daran arbeiten Ware zu versenden und Ihre Anfragen schnellstens zu beantworten.

Bitte geben Sie uns daher ein, zwei Tage Zeit. Es wird nichts vergessen und wir sind uns sicher alle Ihre Anfragen nach dieser Zeit zu Ihren Zufriedenheit beantworten zu können.

Wie jetzt? Die Hitzewelle ist schuld, dass auf eBay offensichtlich falsche Lagerbestände standen, E-Mails nicht zeitnah beantwortet werden und der Verpackungsbereich gleich hitzefrei hat? Also bei uns wurde durchgearbeitet in allen Abteilungen und ja, wir hatten auch warm.

Wir schreiben mittlerweile übrigens den 7. August. Und es geht nach wie vor um die Ware, deren Stornierung ich am 1. August angefragt hatte, die aber zu dem Zeitpunkt angeblich schon nicht mehr zurückgehalten werden konnte. Am 9. August habe ich dann sowohl von eBay als auch vom Händler eine Versandbestätigung erhalten. Was in beiden Fällen fehlt: Eine Trackingnummer. Richtig krotesk wird es bei der Mail des Händlers:

Die Stellen, an die das Warenwirtschaftssystem eigentlich die Trackingnummer einfügen sollte sind einfach leer. Und ich habe den Screenshot absichtlich etwas größer gemacht, damit man sieht, dass der Link zum Adobe Reader ein Link ist, man das aber beim Trackinglink nicht hinbekommen hat.

Die Ware ist übrigens immer noch nicht da. Es scheint als hätte da ein Dropshipper seine Lagerbestände nicht im Griff. Das auf dem Rücken des Kunden auszutragen ist aber halt auch ein Unding. Eine Verschärfung des Tons beim Händler schien mir daher angebracht:

Ich werde hier seit 14 Tagen verarscht und hingehalten, die Ware ist bis heute nicht angekommen. Ich verlange umgehend das Geld zurück!

Das hat dann dazu geführt, dass binnen zwei Tagen das Geld da war. Kommentarlos. Ware ist nie gekommen. Ich wurde also nicht nur verarscht, ich wurde nachweisliche angelogen was den Versendet-Status der Ware angeht.