Update von Shopware 4 auf Shopware 5 – Heute steht ein sehr alter Shopware 4 Shop auf dem Plan bei dem es verplant wurde planmäßige Updates zu machen. Bei dem Shop war die Uhr bei der Version 4.1.4 stehen geblieben, wo es mittlerweile schon 5.2 gab. Ein weiteres Problem, zu dem Zeitpunkt des Updates war der Shop offline da PHP 5 nicht mehr unterstützt wurde und der Shop dem Kunden um die Ohren flog.
Also musste ich den Shop auf einer anderen Umgebung erst einmal in seiner alten Version zum laufen bringen um ihn dann von dort aus zu aktualisieren, was natürlich auch noch einmal komplizierter ist, da die Shop Domain nicht stimmt, und man sich nicht im Community Store anmelden kann.
Seins drum – ab ins kalte Wasser und erst einmal einlesen was das Internet sagt. Den ersten wirklich hilfreichen Beitrag fand ich dann bei basecom.de – von dort aus habe ich mich dann tiefer reingelesen und eingearbeitet wie man denn am allerbesten und professionellsten ein Update von Shopware 4 auf Shopware 5 umsetzt. In diesem Artikel habe ich euch die Essenz meiner Arbeit zusammen gefasst in der Hoffnung, dass es dem einen oder anderen weiser hilft.
Voranmerkung: Dieser Beitrag wurde über ein Jahr vor seiner Veröffentlichung geschrieben und lag eine Weile in der Entwürfe-Liste, bis er dort wiedergefunden, aufbereitet und schlussendlich veröffentlicht wurde.
Update 05.10.2024: Wer sein Shopware 4 vom Server kopieren und auf seinem localhost oder einer anderen Domain testen möchte, der kann unter Punkt 10 nachlesen, was dabei zu beachten ist.
Übersicht
- 1. Unter Shopware 4.3.6 geht nix
- 2. Das erste Update auf Shopware 4.2.3
- 3. Update von Shopware 4.2.3 auf Shopware 4.3.7
- 4. Update von Shopware 4.3.7 auf Shopware 5.1.2
- 5. Update von Shopware 5.1.2 auf Shopware 5.2.26
- 6. Thumbnails neu generieren
- 7. Update von Shopware 5.2.26 auf Shopware 5.3.37
- 8. Update von Shopware 5.3.37 auf Shopware 5.5.2
- 9. Geheimwissen
- 10. Shopware 4 Kopie lokal installieren
- 11. Weiterführende Links & Quellen
1. Unter Shopware 4.3.6 geht nix
Meine erste wichtige Info war: Man kann erst ab Shopware 4.3.6 auf Shopware 5 upgraden. Außerdem sollte man nicht versuchen gleich auf die allerneuste 5er sondern eher erst einmal auf die älteste Shopware 5 Version zu aktualisieren.
Das hieß für mich der alte Shop musste von seiner aktuellen Version erst einmal auf mindestens 4.3.6 getrimmt werden. Im Shopware Forum hatte der gute Mario auch gut beschrieben wie da genau vorzugehen ist und hier ist die von ihm vorgeschlagene optimale Reihenfolge der einzelnen Updates:
- Minor-Update 4.0.6 auf 4.0.7
- Minor-Update 4.0.7 auf 4.0.8
- Major-Update 4.0.8 auf 4.1.0
- Minor-Update 4.1.x und 4.2.x auf 4.2.3
- Minor-Update 4.2.x auf 4.3.0 (stimmt nicht ganz)
Ein wichtiger Tipp der an der Stelle genannt wird ist nach jedem Update Schritt im Backend den kompletten Cache zu löschen. Außerdem soll man in der Systeminfo nachschauen ob bei allen Datei ein grüner Haken ist.
Die einzelnen Update Pakete für Shopware bekommt man an sich alle hier:
https://www.shopware.com/en/changelog-sw5/
Da es sich bei den gesuchten Updates schon beinahe um prähistorische Versionen handelt muss man auf dieser Seite die Dateien runterladen die älter als die 4.3.7. sind: https://community.shopware.com/Updatepakete-von-Shopware-4.0.1-bis-Shopware-4.2.4_detail_2019.html
Nachtrag: Aktuell findet man diese UR-Update Dateien nicht mehr im Shopware Changelog, daher habe ich sie hier mal hochgeladen, falls sie noch jemand benötigen sollte.
2. Das erste Update auf Shopware 4.2.3
Gut dann legen wir mal los. Laut meiner Mario-Liste benötige ich als erstes ein Update auf 4.2.3 – die Datei wiegt 10 MB was mich schonmal beruhigt. Zahlentechnisch bewegen wir uns bei 6.615 Dateien. Ich ärger mein FileZilla und teste mal aus wie lange es dauert die einzeln hoch zu laden und nutze die Zeit mit einen frischen Tee zu machen.
Was heißt das konkret: Ich habe die Zip Datei entpackt und den Inhalt per FTP in das Verzeichnis meines Shopware Ordners gezogen und eingestellt dass die alten Dateien bei Bedarf überschrieben werden sollen.
Wollen wir das Update lokal ausführen empfehle ich folgenden Weg: Lade den Order irgendwo auf einen Server hoch und von dort aus wieder runter in den Ordner der lokalen Shopware Installation.
Und dann das! Gut ich hatte die Anleitung noch nicht durchgelesen und war dann erstmal teilzeit-frustriert bis ich weiterlas, dass man doch bitte seinen Shop aufrufen und dann hinter die Domain /update schreiben möge. Gesagt, getan.
Das sah dann schon viel besser aus:
Nachdem man sich einmal durchgeblickt hat kommt man hier an:
Ok den kompletten Update Ordner gelöscht und noch einmal in den frisch aktualisierten Shop. Das Frontend sieht gut aus also ab ins Backend und erstmal wie empfohlen den Shop- und Browser Cache löschen. Dann noch ein Blick ob alle Häkchen bei den Systeminfos grün genug sind:
Wie man sieht: Alles wunderbar!
Nächste Hürde: Das Update zur 4.3.7 er Version aber vorher noch ein Backup der aktuellen Version erstellen, denn man weiß ja nie. Zum Thema Shopware Backup findet ihm im Blog übrigens auch einen ganzen Beitrag.
Zwischendurch hatte ich übrigens einen kleinen Schock weil nach der obigen Liste müsste ich eigentlich auf 4.3.0 updaten, was ich aber nirgends finden konnte. Tatsache ist aber, dass man auch direkt auf die 4.3.7 springen kann. Da ich ein Backup gemacht habe wage ich also den Spring ans nächste Level.
3. Update von Shopware 4.2.3 auf Shopware 4.3.7
Ich lade mir das Update Paket runter unter: https://community.shopware.com/Downloads_cat_448.html – da muss man dann erstmal die Box der Dateien aufklappen um die alleeunterste in der Liste zu finden. Wichtig: Ladet euch die „Shopware – Update“ und nicht die „Shopware Install“ Datei runter.
Die entpackten Dateien ladet ihr wieder per FTP in euren Shopware Ordner wobei ihr einen Teil der alten Dateien überschreibt.
Ok so viel Glück kann man natürlich nicht immer haben, also muss ich mich um die Plugins kümmern. Alles was veraltet ist muss gelöscht werden – das schlichte deaktivieren reicht nicht. Hier habe ich gelesen wie man unnötige Shopware Plugins manuell deinstalliert und auch gleich mal wagemutig nachgemacht: https://forum.shopware.com/discussion/27018/wie-kann-ich-ein-plugin-manuell-entfernen-hier-sofort
Aktiviert waren eigentlich eh nur 3 externe die mir Kopfschmerzen bereiten könnten, Piwik, das Cookie Permission Plugin und das von SOFORT Überweisung. Also erst einmal alle deaktivieren und dann löschen.
Die restlichen aktiven Plugins waren ausschließlich von Shopware. Dafür gibt es aber noch ein dutzend unnötiger Plugins die irgendwann mal installiert wurden.
Also was tun? – Hier in den Ordner rein:
/engine/Shopware/Plugins/Community/Frontend
Und alle 3 Ordner eliminieren
Update: Manchmal versteckt sich das Sofort Plugin auch hier:
/engine/Shopware/Plugins/Default/Frontend/SofortPayment
Was noch? Einmal bei phpmyadmin einloggen und in der s_core_plugins active auf 0 setzen – ok das war der Tipp aus dem Forum. Der macht aber keinen Sinn, weil die eh schon auf inaktiv waren. Dann wiederum denke ich mir, es könnte auch eins von all den anderen inaktiven Plugins sein, welches mit 4.3.7 inkompatibel ist.
Ich werde erst einmal alle anderen Plugins löschen. Die 3 die ich aufgezählt hatte waren Community Plugins die anderen alle nicht das sind im einzelnen:
- Heidelpay
- Klarna
- PAYONE
- PaymentSkrill
- RatePAY Paymorrow
- BillSAFE
Ordner: /engine/Shopware/Plugins/Default/Frontend
Hier sieht man die zu löschenden Datenbankspalten. Die Ansicht ist nach Herstellern sortiert, daher werden mir genau die gesuchten auch direkt untereinander angezeigt. Die CouchCommerce Spalte habe ich auch noch gelöscht.
Ein Plugin hatte sich dann noch im Backend Bereich verschanzt:
/engine/Shopware/Plugins/Default/Backend
Und hier könnte man auch noch was finden:
/engine/Shopware/Plugins/Default/Backend/HeidelActions
So jetzt kann man nochmal einen Versuch wagen würde ich sagen – aber vorher mache ich natürlich noch ein Backup der abgespeckten und noch funktionalen Shopware 4.2.3 Version. Jetzt wo ich mich sicher fühle versuche ich ein zweites Mal das Update auf Showa 4.3.7 und lade die Update Dateien auf den Server hoch. Uuuund – diesmal scheint es zu klappen!
Ok es war tatsächlich spannend, denn zuerst wurde mir wie oben diese Wartungsmodus-Seite angezeigt unter der Adresse webseite.de/update-assets konnte ich jedoch nicht auf die Update-Maske zugreifen. Vorher war das ja bei Webseite.de/updates. Den Ordner gab es aber nicht sondern eben den Ordner update-assets den man aber nicht aufrufen soll sondern stattdessen:
website.de/recovery/update
Dann seid ihr nämlich wieder beim „Aktualisierung Starten“ Fenster und könnt nun euer Glück versuche
Das hat geklappt, jetzt muss wieder der Ordner updates-assets (wie oft hab ich das Wort jetzt geschrieben… ) gelöscht werden, dann der Browser Cache, dann der ganze Shop Cache und dann noch der Nudelsalat mit Honig-Erdnuss-Sauce Cache natürlich auch noch.
Und wenn ich von Shop Cache rede, dann meine ich hier alle Caches die man auswählen kann:
Alles funktioniert und alle Punkte in allen Reitern der System-Informationen sind von oben bis unten grün. Das gefällt mir und ich sichere mir direkt wieder einmal den Shop für den Fall das in den nächsten Schritten des Shopware Updates etwas schief geht.
Dabei sichere ich wie immer nicht nur die Dateien sondern auch die Datenbank, denn auch die wurde nach dem Update verändert.Dafür logge ich mich über das Terminal auf dem Server ein, navigiere in den Ordner und kopiere folgenden Befehl da rein:
tar cfzv backup_20181024_v437.tar.gz ./
Anschließend lade ich mir die Datei per FTP vom Server und hole mir im phpmyadmin ein Backup der Datenbank. Und für diejenigen die noch nie eine Datenbank exportiert haben: Man muss einfach nur auf OK drücken. Wenn die Datenbank größer ist kann man sie noch vorher als zip Datei packen.
4. Update von Shopware 4.3.7 auf Shopware 5.1.2
Jetzt kommt der finale Schritt mit dem wir endlich das Update von Shopware 4 auf Shopware 5 machen werden. Um genau z sein nämlich auf die Version 5.0 – wenn das gut läuft werden wir wieder einen Schritt weiter gehen.
Dafür müssen wir zunächst eine kleine Anpassung der Datenbank vornehmen:
UPDATE s_articles_details SET `additionaltext` = '';
UPDATE s_article_configurator_templates SET `additionaltext` ='';
Klickt einfach auf den SQL Reiter und gebt das da so ein und klickt auf OK:
Mit dieser Version von Shopware können wir uns auch endlich anzeigen lassen wie es genau um die Updatefähigkeit steht. dafür klickt man in der Navigation oben auf das Fragezeichen > dann auf Softwareaktualisierung und dort dann jeweils auf den Voraussetzungen…
und auf den Plugins-Reiter.
Wenn da alles ok ist würde ich sogar behaupten wollen dass man schon einen größeren Sprung Richtung 5.1.6 wagen könnten. Gut also dann lösche wir jetzt erstmal die Störenfried-Plugins.
Wo finde ich die? Per FTP navigiere ich in den Ordner: /web/engine/Shopware/Plugins/Community/Frontend
Dort lösche ich beiden Ordner komplett und lösche dann noch in der Datenbank, bei der Tabelle … wieder die dazugehörigen Zeilen damit das System jegliche Erinnerungen an das Plugin vergisst. Nachdem ich das alles + ein Backup gemacht habe mache ich mich auf zum nächsten Update Schritt.
Update, 28.10.2024
Anpassung im Shopware Account
Wenn wir das erste Mal von Shopware 4 auf 5 updaten müssen wir zudem auch noch etwas in unserem Shopware Account anpassen. Hier befindet sich ein gesonderter Button, mit dem wir intern unseren Shop umschalten und in Zukunft auch Plugins für Shopware 5 im Shopware Store oder erwerben zu können.

shopware 4 update auf shopware 5 – Account Einstellungen
Ist dein Shop im Account nicht korrekt konfiguriert, kann es zu folgender Fehler-Anzeige kommen:

shopware 4 update auf shopware 5 – Account Problem
Und wenn wir an Shopware 5 Plugins wollen ist auch im Account noch ein Button mit dem man sein Upgrade auf Shopware 5 durchführen kann.

Shopware 4 Update auf Shopware 5 – Lizenzen
5. Update von Shopware 5.1.2 auf Shopware 5.2.26
In der Shopware version 5.1.2 bekomme ich gleich die Mitteilung, dass das verwendete Theme ab 5.2.2 nicht mehr mitspielt und gegen ein aktuelles Theme ausgetauscht werden muss.
Als erstes prüfe ich wieder im Bereich ? > Softwareaktualisierung > den Voraussetzungen Reiter, wo mir genau das angezeigt wird was mir die Mitteilung zuvor angezeigt hat:
Sowie den Plugins Reiter wo man mir wieder die neue Version des SOFORT Plugins, was ich nach installiert habe ausreden will und mir ebenfalls vom Cookie Plugin abrät. Gut meinetwegen lösche ich die beiden.
SOFORT und Cookie Plugin
Bevor man diesen Schritt gehen möchte ich noch darauf verweisen, dass man sich im Shopware Community Store anmelden sollten um dort einmal einen Blick in den Lizenzen Bereich zu werfen. Dort muss man nämlich auch noch einmal angeben, dass man nun eine andere Version von Shopware verwendet. Insbesondere wenn folgende Meldung im Backend angezeigt wird:
Wenn ihr da auf den Account aufrufen Link klickt und schon eingeloggt seid kommt ihr auf folgender Seite raus.
Etwas verwirrend an dieser Stelle ist, dass man die als inkompatiblem angezeigten Plugins hier nun als Shopware 5 kompatible Plugins angezeigt bekommt.
Wer als auf Nummer sicher gehen will und die Plugin zunächst erst einmal löschen will muss dafür in den Plugins Bereich unter: Einstellungen > Plugin Manager. Dieses Mal geht das Lösch-Prozedere einfacher, denn es werden Lösch Buttons in der Plugin Liste angezeigt. Hier sieht man den Button beim Cookie Plugin.
Shopware Update auf Shopware 5 – Saubere Plugin Liste
6. Thumbnails neu generieren
Nachdem die Plugins gelöscht und das Responsive Theme aktiviert ist steht dem Update auf Shopware 5.2.2 nicht mehr allzu viel im Wege… außer: Die Bilder werden noch sehr winzig angezeigt, da ich die korrekten Thumbnail Größen noch generieren muss.
Hierfür lege ich bei den Thumbnails zunächst folgende Größen neu an:
- 200×200
- 600×600 und
- 1280×1280
Das macht man im Bereich Media und klickt dein beim Album Artikel auf das Zahnrad um zu den Einstellungen zu gelangen.
Im Screenshot sieht man, dass ich 200×200 eingetragen und die Qualität bei normalen und HQ Thumbnails auf 100 gesetzt habe. Ich bin halt ein Qualitätsjunkie und stehe auf hohe Auflösungen. Andere werden wohl eher dazu raten geringere Werte zu nutzen. Dann klickt man einmal auf Thumbnail erstellen und die neue Größe wird neben dem 720×600 Bildchen angezeigt:
Dann trägt man wieder 200×200 da ein und klickt aber dieses Mal auf Thumbnails generieren worauf diese Frage erscheint dir wir mit Ja beklicken.
Vorgang starten klicken und es geht los.
Das ganze Spielchen muss man dann noch einmal mit den anderen Größen durchführen. Das geht aber schneller als es sich anhört. Ist man mit den Artikeln fertig geht es weiter mit den Einkaufswelten & Bannern wo die neuen Größen wie folgt lauten:
- 800×800,
- 1280×1280 und
- 1920×1920
Abschließend gebt ihr für den Blog noch einmal die gleichen Thumbnail Größen wie bei den Artikel-Bildern an, also: 200×200, 600×600 und 1280×1280 – das war`s. Löscht jetzt den Cache und drückt euch selbst die Daumen, dass die Bilder jetzt alle die korrekte Größe haben.
Bei mir klappt es nicht auf Anhieb und ich beherzige zusätzlich noch einmal die Vorschläge aus diesem Foren Einrag: https://forum.shopware.com/discussion/27251/bilder-im-shop-nach-shopware-5-viel-zu-klein – dort wird vorgeschlagen: Die unnötigen / alten Thumbnail-Größen sollen gelöscht werden. Am Ende dürfen dort nur noch die Größen stehen die wir gerade eben angelegt haben. Das wollte ich an sich eben auch schon machen wußte nur noch nicht wie. Jetzt aber weiß ich es und werde es euch nicht länger vorenthalten:
Der Screenshot verrät: Mit einem Rechtsklick auf die ungewollten Mini-Thumbnails lassen sich diese löschen. Bei den Artikeln muss es nachher so aussehen:
Danach klicken wir noch einmal auf Thumbnails generieren, löschen den Cache und checken das Frontend. Ergebnis: Es klappt – sehr gut. Jetzt können wir also theoretisch auch schon weiter in Richtung Shopware 5.2 updaten. Den direkten Sprung zu 5.5.2 kann ich nicht empfehlen. Stück für Stück kann man es immer am besten testen.
Ihr arbeitet gerne über die Konsole? Dann werdet ihr diese Befehle benötigen:
Geheimtipp: Falls die Befehle Faxen machen gibt es folgende Lösungen:
Nervige Meldung wegen Rechten, Mechten:
zsh: permission denied: bin/console
Lösung: Rechte geben, wie Frauen in den Achtzigern:
chmod +x bin/console
Nervige Meldung wegen PHP, wenn man lokal mit MAMP arbeitet:
zsh: command not found: php
Lösung: Nutze den genauen Link zur verwendeten PHP Version, z.B. su:
/Applications/MAMP/bin/php/php5.6.32/bin/php bin/console sw:media:migrate
Befehl | Beschreibung |
---|---|
(php) bin/console sw:media:migrate | Migriert Medien aus der alten Struktur (vor 5.1) in die neue Struktur (ab 5.1) |
php bin/console sw:media:cleanup | Verschiebt ungenutzte Bilder in den Papierkorb (ab 5.1) |
php bin/console sw:media:cleanup –delete | Verschiebt ungenutzte Bilder in den Papierkorb und löscht diese direkt (ab 5.1) |
php bin/console sw:media:cleanup –help | Zeigt alle Befehle für cleanup an |
php bin/console sw:thumbnail:cleanup | Löscht nicht mehr genutzte Thumbnails aus allen Alben |
php bin/console sw:thumbnail:generate | Generiert alle Thumbnails neu (schneller als im Backend, kann je nach Menge, Qualität und Einstellungen dennoch lange dauern!) |
php bin/console sw:media:cleanup | Durchsucht die Installation direkt auf dem Dateisystem, erstellt einen Index über alle originalen Bilder und deren Thumbnails und löscht die verwaisten Thumbnails. (Ab Shopware 5.3.0) |
Hier habt ihr eine Übersicht über alle Bereiche in denen Thumbnails verwendet werden und die passende Größe:
Kategorie | Größen |
---|---|
Einkaufswelten | 800×800 / 1280×1280 / 1920×1920 |
Banner | 800×800 / 1280×1280 / 1920×1920 |
Artikel | 200×200 / 600×600 / 1280×1280 |
Blog | 200×200 / 600×600 / 1280×1280 |
Geheimtipps:
a) Wenn ständig die Meldung kommt, dass ihr eine kleinere Stapelgröße nehmen sollt, macht auch einfach mal das Gegenteil. Shopware sagt bei einer 20er Stapelgröße, dass es zu groß nimmt? Probiert es stattdessen mal mit einer Stapelgröße von 100!
b) Ein weiteres Mittel das Erstellen der Thumbnails doch noch irgendwie hinzubekommen ist es nur „normale“ Thumbnails zu erstellen und das Häkchen bei High Resolution Thumbnails erstellen wegzulassen.
Mehr über Bilder und Vorschaubilder könnt ihr hier lesen:
https://docs.shopware.com/de/shopware-5-de/inhalte-und-medien/medien
Was ich vor dem Update zur Shopware 5.2.2 noch empfehlen möchte ist etwaige Emotion Themes vom Server zu löschen. Diese können ab 5.2 nicht mehr verwendet werden und sorgen nur für unnötigen Ballast auf dem Weg zur nächsten Shopware Version. Die Templates findet ihr unter: /web/templates

Shopware 4 Emotion Templates
ACHTUNG: Wenn eurer Shop mit einem Template auf Emotion basis läuft, heißt das konkret, dass der Shop bzw. euer neues Theme neu gestaltet und konfiguriert werden muss. Ihr könnt das Bare oder Responsive Theme kostenlos nutzen oder ein neues Theme aus dem Store holen. Wenn euer Emotion-Template relativ kompliziert war, kommt hier also ein relativ großer Haufen Arbeit auf euch / euren Webdesigner zu.
Was noch? Man muss die Datenbankeinträge der Templates in der Tabelle s_core_templates noch entfernen:

Shopware 4 Update auf Shopware 5 – templates Tabelle
Da kann man im Endeffekt alle bis auf Responsive und Bare raus löschen. Falls das nicht direkt schrieb noch einer im Forum dass man außerdem noch alle Dateien und Ordner unterhalb des Ordners cache/template auf dem Server löschen müsse. Das konnte ich aber nicht nachvollziehen, das es auch so schon bei mir ging.
Ok jetzt kann ich endlich das Update Paket runterladen um die Dateien per FTP auf den Server zu laden. Bei knapp 1.600 Dateien kann das eine Weile dauern…
Wenn alle Dateien hochgeladen sind rufe ich diedomain.de/recovery/update auf um den bekannten update Prozess ein weiteres Mal durchzuführen.
Dann alle Caches und den Browser Cache löschen und einen Blick in die Systeminformationen werfen. Wenn da alles in Ordnung ist, können wir auch mal auf PHP 7.2 hochschalten, ein Backup der Shopdateien- und Datenbank erstellen und zur nächsten Version übergehen.
7. Update von Shopware 5.2.26 auf Shopware 5.3.37
Und wir nähern uns wieder ein Stück weiter dem Ziel einer top-aktuellen Shopware Installation. Zunächst einmal laden wir uns das Update Paket für die Version 5.3.37 runter und gehen dafür wieder auf: https://community.shopware.com/Downloads_cat_448.html – ist das Paket geladen und entpackt kann es auch schon auf den Server. Dieses Mal sind es schon 12.600 Dateien.
Nach dem Update vergessen wir nicht den update-assets Ordner und den Browser Cache zu löschen. Nach em erfolgreichen Update legen wir zudem auch wieder ein
Backup an.
8. Update von Shopware 5.3.37 auf Shopware 5.5.2
Dieses Mal machen wir e einfach aus dem Backend: Und es klappt! Wir sind am Ziel einer weiten Reise von Shopware 4.1.4 bis zu Shopware 5.5.2 angekommen. Wenn du es auch geschafft hast – herzlichen Glückwunsch! Falls nicht weißt du ja wo das Kontaktformular ist.
9. Geheimwissen
Was ist welches Plugin bei SW4?
SwagFuzzy = Intelligente Suche
Geduldig Klicken
Nach Klick auf Update starten kann es auch schonmal etwas länger dauern bis sich etwas bewegt. Klickt 3-4x saftig drauf und dann wartet auch einfach mal 5-10 Minuten ob wirklich nichts passiert. Man sollte auch warten bis die grünen Häkchen bei beiden Reitern (Vorausseztungen / PLugins) angezeigt werden.
Der Sprung von Templates zu Themes
Bei Shopware 4 wird im Gegensatz zu Shopware 5 mit dem Begriff Templates gearbeitet. Bei Shopware 5 hingegen reden wir von Themes.
Im Developer Guide gibt es hierzu einen Link. Auf dieser Seite wird beschrieben worauf wir achten müssen. Zum Beispiel müssen unsere Vorschaubilder / Thumbnails neu generiert werden.
Wer ein paar hundert Bilder hat, kann das über das Backend erledigen, wer eher bei ein paar tausend Bildern ist der sollte den Weg über die Konsole gehen und den CLI Befehl: sw:thumbnail:generate. Zuvor müssen im Backend jedoch die Thumbnail-Größen angelegt / geprüft werden.
Ab Shopware 5.2 werden Templates gar nicht mehr unterstützt. Heißt vor einem Update in diese Regionen ist es wichtig, dass wir das Responsive Theme verwenden und alles was mit Templates zu tun hat aus unserem Shop entfernen.
Shopware Auto Update Plugin NICHT löschen!
Glaub mir.
Update-Trick 17
Funktioniert NICHT über recover/update? Funktioniert ABER (wahrscheinlich) über Backend Update!
Fehlersammlung:
Beim Klick auf Plugin_Einstellung kommt das Fenster von einem anderen Plugin.
Schau mal in die Tabelle s_core_plugins, da gibt es ein oder mehrere Plugins mit installation_date NULL, aber active = 1 (nicht installiert, aber aktiv). Da müsstest du dann active = 0 setzen.
heidelpay sauber löschen
https://forum.shopware.com/t/wie-kann-ich-heidelpay-entfernen/58145/4
500er Fehler, vergessen PHP auf 7.2 umzuschalten.
– nachträglich umschalten!
Fatal error: Declaration of Shopware\Components\Routing\Router::route(Zend_Controller_Request_Abstract $request) must be compatible with Enlight_Controller_Router::route(Enlight_Controller_Request_Request $request) in /var/www/clients/client25/web89/web/engine/Shopware/Components/Routing/Router.php on line 37
– Lösung: engine/shopware neu hochladen / überschreiben
Backend blau – aber kein Login Formular:
– Lösung: Ordner themes/backend neu hochladen
Fehler bei Update auf SW 5.3:
Warning: include(/var/www/clients/client25/web89/web/vendor/composer/../../engine/Library/Zend/Controller/Request/Http.php): failed to open stream: No such file or directory in /var/www/clients/client25/web89/web/vendor/composer/ClassLoader.php on line 444
Warning: include(/var/www/clients/client25/web89/web/vendor/composer/../../engine/Library/Zend/Controller/Request/Http.php): failed to open stream: No such file or directory in /var/www/clients/client25/web89/web/vendor/composer/ClassLoader.php on line 444
Warning: include(): Failed opening ‚/var/www/clients/client25/web89/web/vendor/composer/../../engine/Library/Zend/Controller/Request/Http.php‘ for inclusion (include_path=’/var/www/clients/client25/web89/web/engine/Library:.:/opt/php-7.0.27/lib/php‘) in /var/www/clients/client25/web89/web/vendor/composer/ClassLoader.php on line 444
– Lösung: vendor Order aus dem install Order hochladen
Fatal error: Class ‚Zend_Controller_Request_Http‘ not found in /var/www/clients/client25/web89/web/engine/Library/Enlight/Controller/Request/RequestHttp.php on line 34
Lösung:
– vendor Order aus dem install Order hoch laden
– engine/library aus install Ordner hochladen
– engine/shopware neu hochladen / überschreiben
10. Shopware 4 Kopie lokal installieren
Das hier sind die Schritte, die du beim anlegen einer Shop Kopie beachten solltest:
a) Backups erstellen
b) Altes MAMP besorgen
c) Auszuwählende PHP Version anpassen
d) Shop URL in Datenbank anpassen
e) config Datei anpassen
f) Tabele s_core_shops anpassen
g) IONCube Loader installieren
h) .htaccess Datei anpassen
i) Browser erlauben unsichere Seiten aufzurufen
Anmerkung: In diesem Beispiel beziehe ich mich auf die Version 4.3.7, welches 2024 auch die letzte Shopware 4 Version ist, die wir noch in den offiziellen Changelogs finden können. Bei dieser Version können wir mit PHP 5.6 arbeiten, was den Vorteil hat, dass wir auch schon phpmyadmin nutzen können, was erst ab PHP 5.5 funktioniert.
a) Backups erstellen
Wer seinen Shopware 4 Shop vom Server kopieren und lokal installieren möchte hat ein paar Dinge zu beachten. Vor allem benötigen wir einmal ein sauberes Backup des Shops. Beim Backup der Dateien ist darauf zu achten, dass die unsichtbaren htaccess Dateien nicht vergessen werden.
b) Altes MAMP besorgen
Wer sich heute noch ein Shopware 4 System lokal auf dem Rechner installieren möchte, der muss sich als erstes eine alte MAMP Version besorgen, die älteste die offiziell noch auf der Seite angeboten wird ist die 4.5.0 – Diese Version kommt sowohl mit unterschiedlichen PHP 5 Versionen und auch mit PHP 7.
Achtung: Falls du noch eine zusätzliche MAMP Installation auf dem Rechner hast, lege dir unbedingt Backups davon an, denn 2 MAMP Installationen verstehen sich in der Regel nicht so gut. Es ist besser wenn du dein neueres MAMP löschst und dann die alte Kiste, also MAMP 4.5.0 installierst. Sichere alle deine Daten und Datenbanken oder leih dir für dieses Projekt den Gaming Rechner von deinem Onkel.
c) Auszuwählende PHP Version anpassen
Wer MAMP installiert und auf die Einstellungen auf den PHP Reiter geht wird merken, dass nur 2 Versionen angeboten werden und beides 7er Versionen sind.
Bei mir wurden zu Beginn nur diese Versionen angezeigt:
- 7.1.12
- 7.2.1
Um diesen Umstand erst einmal zu ändern und es technisch überhaupt zu ermöglichen die passende PHP Version auszuwählen müssen die Ordnernamen der beiden angezeigten Versionen „manipuliert“ werden. Dann können sie nicht mehr ausgelesen udn angezeigt werden.
Wie das genau funktioniert wird in diesen beiden Beiträgen näher erläutert:
– https://stackoverflow.com/questions/43137191/how-to-change-php-version-on-mamp-4-1
– https://stackoverflow.com/questions/16783558/how-can-i-add-additional-php-versions-to-mamp
Ich kann es aber auch nochmal mit 3 Worten erklären:
MAMP/bin/php/
Da rein. ändern:
- php7.1.12_X
- php7.2.1_X
Wenn ihr die Ordnernamen verunstaltet und hinten dran zum Beispiel einen Unterstrich und ein X setzt, dann werden diese Versionen in der Auswahl ausgeblendet und stattdessen wird Platz gemacht für die oberen beiden Versionen. Nach dem ändern muss MAMP natürlich mindestens einmal neu gestartet werden.
Ab jetzt sollten wir hier nun diese beiden PHP Versionen zur Auswahl angeboten bekommen und dann bestenfalls die 5.6.32 auswählen.
d) Dateien und Datenbank kopieren
Haben wir unsere Backups erstellt, legen wir die Dateien in den htdocs Ordner und dort am besten gleich in einen Unterordner mit dem Namen shopware (alles klein). Anschließend importieren wir die Datenbank, hierfür legen wir am besten vorher scheone eine leere Datenbank mit der gleichen Kollation wie im Live-Sop an. Das könnte zum Beispiel utf8mb4_unicode_ci sein.
Wichtig: Du kannst nur Datenbank importieren, die maximal ca. 8MB haben. Gerade bei alten Shops ist das ein seltener Fall, weshalb die Datenbank vorher etwas bereinigt werden sollte, wo es geht. Wenn der Live-Server es zulässt kann man dort eine Kopie mit dem mysqldumper anlegen und anschließend ein wenig die Einträge bereinigen um auf die maximalen 8MB zu kommen.
In der Regel braucht es auf der lokalen Umgebung keine Kunden und Bestellungen. In einigen Shopwa findet man z.B. sehr große Tabellen die mit heidelpay und Bezahlungen zu tun haben, all das kann man sich auf der lokalen Installation sparen.
Alle Tabellen, die auf Bestellungen bezogen sind, die man leeren kann:
- s_order
- s_order_attributes
- s_order_basket
- s_order_basket_attributes
- s_order_billingaddress
- s_order_billingaddress_attributes
- s_order_comparisons
- s_order_details
- s_order_details_attributes
- s_order_documents
- s_order_documents_attributes
- s_order_notes (Bestell-Notizen)
- s_order_history
- s_order_shippingaddress > Adresse zur Bestellung
Weitere Tabellen, die man leeren kann:
- s_statistics_referer
- s_articles_also_bought
- s_core_payment_instance
- heidelpaycw_transaction
- heidelpaycw_storage
Kleiner Tipp für die s_articles_also_bought: Wenn du zum Beispiel die 1000 neusten Beiträge beibehalten willst, dann blättere von der letzten Seite aus soweit zurück, bis du ca. beim tausendsten Beitrag von hinten bist. Lässt du dir also 100 Einträge pro Seite anzeigen, gehst du von hinten 10 Seiten zurück und suchst dir auf der Seite eine ID raus. Das könnte zum Beispiel die 1138454 sein. Wenn ja, nutze diesen Code, um nur alle Einträge vor dieser ID zu löschen:
DELETE FROM s_articles_also_bought WHERE id < 1138454;
Wer Milliarden Kunden hat, kann die auch noch leeren:
- s_user
- s_user_attributes
- s_user_billingaddress
- s_user_billingaddress_attributes
- s_user_debit
- s_user_shippingaddress
- s_user_shippingaddress_attributes
Grundsätzlich gilt es, in der Übersicht der Tabellen der Datenbank zu schauen, welches die größten Tabellen sind, mit der größten MiB Anzahl.
Beim Export sollten wir unsere Datenbank dann noch zippen, so kann man 40-50 MB auch noch locker auf 6-7 MB schrumpfen.
e) config Datei anpassen
Hier müsst ihr die Datenbank Zugangsdaten natürlich anpassen. Ich mache es meistens so, dass ich in phpmyadmin eine leere Datenbank mit dem Original-Namen der Datenbank anlegen und dann nur noch den Server, das Passort, den User und den DB-Namen eintrage.
Die Datei config.php finden wir im obersten Verzeichnis unseres Shopware 4 Shops.
f) Tabele s_core_shops anpassen
Wer seinen Shopware 4 Live-Shop lokal mit MAMP verwenden möchte, der muss einige Anpassungen an der soeben importieren Datenbank vornehmen. Man muss in der Tabelle s_core_shops die Einträge beim Hauptshop anpassen.
Im Feld host & hosts kommt das rein: localhost:8888
Im Feld Secure setzen wir die 0 statt der 1
Im Feld base_path tragen wir /shopware ein
Im Feld always_secure sollte auch eine 0 stehen.
Ist das getan muss der Apache Server neu gestartet werden, damit die Änderungen wirken. Den Browser Cache würde ich auch löschen.
Zusätzlich sollten die Inhalte dieser beiden Order gelöscht werden:
cache/proxies
cache/general
cache/templates
g) IONCube Loader installieren
Den IONCube Loader benötigt (nur) wer verschlüsselte bzw. kostenpflichtige Plugins in seinem Shop verwendet.
Wenn du ihn brauchst folge diesen Schritten:
IONCube Loader Wizard herunterladen
Lade den IONCube Loader Wizard von folgendem Link herunter: IONCube Loader Wizard.
Entpacke die heruntergeladenen Dateien und lege sie in einen neuen Unterordner namens ioncube
im Verzeichnis htdocs
.
Zugriff auf den IONCube Loader Wizard
Rufe die folgende URL in deinem Browser auf:
http://localhost:8888/ioncube/loader-wizard.php
Fehlerbehebung bei der Installation
Möglicherweise erhältst du die folgende Fehlermeldung:
„Please note that the following problem currently exists with the ionCube Loader installation: The necessary zend_extension line could not be found in the configuration.“
Lösung:
Öffne die Datei /Applications/MAMP/bin/php/php5.6.x/conf/php.ini
. Stelle sicher, dass du die Datei der verwendeten PHP-Version öffnest.
Suche nach der Zeile, die mit ;zend_extension
beginnt, und füge darunter die folgende Zeile hinzu:
zend_extension = "/Applications/MAMP/bin/php/php5.6.32/lib/php/extensions/no-debug-non-zts-20131226/ioncube_loader_dar_5.6.so"
Starte MAMP neu.
Überprüfung der Installation
Nach dem Neustart von MAMP kannst du erneut auf den IONCube Loader Wizard zugreifen, um sicherzustellen, dass die Installation erfolgreich war.
Bei erfolgreicher Installation sollte die Fehlermeldung nicht mehr angezeigt werden. Andernfalls überprüfe die Schritte erneut.
Weitere mögliche Fehlermeldungen
Es kann auch folgende Fehlermeldung auftreten:
„Site error: the file /Applications/MAMP/htdocs/shopware/engine/Shopware/Plugins/Community/Core/SwagLicense/Bootstrap.php requires the ionCube PHP Loader ioncube_loader_dar_5.6.so to be installed by the website operator. If you are the website operator please use the ionCube Loader Wizard to assist with installation.“
In diesem Fall stelle sicher, dass die IONCube-Dateien im richtigen Verzeichnis sind und dass die php.ini
korrekt konfiguriert wurde, wie zuvor beschrieben.
h) htaccess Datei anpassen
Bei der .htaccess Datei ist insbesondere darauf zu achten, dass der mod_rewrite Befehl korrekt ist.
Diese Zeilen sollten auskommentiert sein, damit kein SSL verwendet wird:
# Https config for the backend
# RewriteCond %{HTTPS} !=on
# RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Das muss auch raus, falls vorhanden:
# SSL erzwingen
# RewriteEngine On
# RewriteCond %{HTTP_HOST} ^cosmaderm24\.de [NC]
# RewriteCond %{SERVER_PORT} 80
# RewriteRule ^(.*)$ https://cosmaderm24.de/$1 [R,L]
Bei wem ständig beim Aufruf der Shop-Kopie der Orignal-Shop aufgerufen wird sollte seine Einstellungen mit der Standard .htaccess Datei eines frisch installierten Shopware 4.3.7 Shops mit seiner eigenen vergleichen:
Die sieht so aus:
RewriteEngine on
#RewriteBase /shopware/
# Https config for the backend
#RewriteCond %{HTTPS} !=on
#RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule shopware.dll shopware.php
RewriteRule files/documents/.* engine [NC,L]
RewriteRule backend/media/(.*) media/$1 [NC,L]
RewriteCond %{REQUEST_URI} !(\/(engine|files|templates)\/)
RewriteCond %{REQUEST_URI} !(\/media\/(archive|banner|image|music|pdf|unknown|video)\/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ shopware.php [PT,L,QSA]
# Fix missing authorization-header on fast_cgi installations
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
# Block access to VCS directories
RedirectMatch 404 /\\.(svn|git|hg|bzr|cvs)(/|$)
# Staging-Rules start
#SetEnvIf Host "staging.test.shopware.in" ENV=staging
DirectoryIndex index.html
DirectoryIndex index.php
DirectoryIndex shopware.php
# Disables download of configuration
# Deny all requests from Apache 2.4+.
Require all denied
# Deny all requests from Apache 2.0-2.2.
Deny from all
# Enable gzip compression
AddOutputFilterByType DEFLATE text/html text/xml text/plain text/css text/javascript application/json
ExpiresActive on
ExpiresDefault "access plus 1 month"
FileETag None
Header append Cache-Control "public"
Header unset ETag
# Disables auto directory index
Options -Indexes
Options -MultiViews
# php_value memory_limit 128M
# php_value max_execution_time 120
# php_value upload_max_filesize 20M
php_flag phar.readonly off
php_flag magic_quotes_gpc off
php_flag session.auto_start off
php_flag suhosin.session.cryptua off
php_flag zend.ze1_compatibility_mode off
# AddType x-mapp-php5 .php
# AddHandler x-mapp-php5 .php
i) Browser erlauben unsichere URL zu öffnen
Es kann passieren, dass sich dein Browser dagegen wehrt die Seite ohne SSL Verschlüsselung aufzurufen. In diesem Fall muss du etwas in den Browser Einstellungen ändern. Beim Brave Browser kann ich dafür links neben der URL in der Adresszeile auf ein Icon klicken und komme dann in eine Übersicht. Hier muss bei der Einstellung Unsere Inhalte „Zulassen“ ausgewählt werden.
j) PHP Version in phpstorm bestimmen
Damit uns keine Fehler zu anderen PHP Versionen angezeigt werden macht es Sinn in phpstorm auch die Version auszuwählen, wie wir vorher in MAMP eingestellt haben.

Shopware 4 lokal – phpstorm – PHP Version
11. Weiterführende Links & Quellen:
Diskussion um Testumgebung und Backups von Shopware 4 im Forum:
https://forum.shopware.com/t/backup-shopware-4/54926/10
Tipps zum Update von Shopware 4 auf Shopware im Forum:
https://forum.shopware.com/discussion/21794/update-von-4-0-6-auf-4-3
Updates ab Shopware 5.2:
https://en-community.shopware.com/Updating-Shopware_detail_1883.html
Veraltete Shopware Plugins manuell entfernen:
https://forum.shopware.com/discussion/27018/wie-kann-ich-ein-plugin-manuell-entfernen-hier-sofort
Zusatz-Tipps und Fehler beim Update auf Shopware 4.3.0:
https://forum.shopware.com/discussion/21394/update-auf-4-3-nicht-moeglich-strict-standards-fehler#p94780
Zusatz-Tipps und Fehler beim Update auf Shopware 4.3.2:
https://forum.shopware.com/discussion/22951/update-problem-von-4-3-0-auf-4-3-2-fehler-500
Alle Shopware Releases bis Shopware 4.0
https://github.com/shopware/shopware/releases
Templates richtig löschen:
https://forum.shopware.com/discussion/11728/template-richtig-loeschen
Shopware 4.1 Kategorien:
https://silo.tips/download/shopware-41-kategorien
Subshops für SW4:
https://packages.friendsofshopware.com/packages/store.shopware.com/swagmultishop/?version=1.0.7
Shopware 5 Templates:
https://developers.shopware.com/designers-guide/legacy-template-development-in-shopware-5/
Shopware 5 – Upgrade Guide
https://developers.shopware.com/developers-guide/shopware-5-upgrade-guide-for-developers/
Beitrag Updates:
02.10.2024 – Text anpassen des Downloads Links zu Shopware Update auf Version 4.2.3 korrigieren.
Hallo, bin aktuell am überlegen ob ich meinen shopware shop noch updaten lassen soll oder gleich meine Artikel bei Etsy einpflegen…
Können Sie mir sagen was eine Aktualisierung kosten würde?
Hallo!
Vielen Dank für ihr Kommentar. Die Aktualisierung ist abhängig von unterschiedlichen Faktoren. Buchen Sie gerne einen kostenlosen Termin um Einzelheiten zu besprechen.
Herzliche Grüße,
Atilla