eCommerce & SEO Magazin - eRock Marketing

JTL Shop aktuelle Version 5.6: Sicher updaten & optimieren

Geschrieben von René Kremer | 10.03.2026

Du siehst im Backend oder im JTL-Forum die Meldung: Neue JTL-Shop-Version verfügbar. Gleichzeitig laufen deine Kampagnen, täglich kommen Bestellungen rein, der WaWi-Abgleich läuft im Hintergrund – und du fragst dich: Sollte ich jetzt updaten oder lieber noch warten? Die Entscheidung ist nicht trivial. Ein Update bringt dir wichtige Bugfixes, neue Features und oft auch Sicherheitsverbesserungen. Gleichzeitig bedeutet es Aufwand, birgt Risiken bei individuellen Anpassungen und kann – wenn schlecht geplant – im schlimmsten Fall deinen Shop kurzfristig lahmlegen. In diesem Artikel erfährst du, was die JTL Shop aktuelle Version konkret mitbringt, für wen sich das Update lohnt, welche Risiken du kennen solltest und wie du Schritt für Schritt sicher vorgehst – inklusive Checklisten für Vorbereitung, Durchführung und Nacharbeiten. Wenn du dabei Unterstützung brauchst, kann ein JTL Service Partner helfen, Risiken zu minimieren.

Was bedeutet „JTL Shop aktuelle Version" – und warum ist das wichtig?

Bevor du dich für oder gegen ein Update entscheidest, solltest du verstehen, was „aktuelle Version" im Kontext von JTL-Shop bedeutet. JTL-Software orientiert sich in der Praxis am Semantic Versioning (SemVer)-Prinzip. Versionen werden im Format MAJOR.MINOR.PATCH angegeben, zum Beispiel 5.6.0. Das hat konkrete Bedeutung für dich:

  • MAJOR-Version (z. B. 4 zu 5): Ein Upgrade auf eine neue Hauptversion bringt umfangreiche neue Features, kann aber auch Breaking Changes enthalten – Templates, Plugins und individuelle Anpassungen müssen oft überarbeitet werden.
  • MINOR-Version (z. B. 5.5 zu 5.6): Ein Update innerhalb derselben Hauptversion. Enthält in der Regel Bugfixes, Stabilitätsverbesserungen und neue Features, die abwärtskompatibel sein sollten – aber Vorsicht bei individuellen Templates.
  • PATCH-Version (z. B. 5.6.0 zu 5.6.1): Kleine Korrekturen und Hotfixes, oft ohne größere Änderungen an Funktionen oder Templates.

Wenn du mehrere Versionen überspringst – etwa direkt von 5.2 auf 5.6 –, solltest du unbedingt die Releaseposts und Changelogs aller dazwischen liegenden Versionen im JTL-Releaseforum prüfen. Dort findest du Informationen zu neuen Features, bekannten Bugs und vor allem zu Breaking Changes, die dein Template oder Plugins betreffen können.

JTL Shop aktuelle Version 5.6.0: Was ist neu und warum lohnt sich ein Blick?

Die aktuelle stabile Version zum Zeitpunkt dieses Artikels ist JTL-Shop 5.6.0. Sie bringt im Vergleich zur Version 5.5.3 mehrere interessante Neuerungen und wichtige Bugfixes mit sich. Hier die wichtigsten Änderungen im Überblick:

AVIF-Unterstützung: Schneller laden, bessere Performance

Das Bildformat AVIF (AV1 Image File Format) wird nun offiziell unterstützt. AVIF ist ein modernes, zukunftssicheres Format, das bei gleicher Bildqualität deutlich bessere Komprimierung bietet als JPEG oder WebP. Das bedeutet für dich: kleinere Dateigrößen, schnellere Ladezeiten, bessere Core Web Vitals – und damit potenziell bessere Rankings und höhere Conversion Rates. Besonders auf mobilen Endgeräten und bei bildlastigen Kategorieseiten oder Produktdetailseiten macht sich das bemerkbar.

Wichtig: „Shop unterstützt AVIF" bedeutet nicht automatisch, dass die komplette Medienpipeline end-to-end funktioniert. Du solltest nach dem Update konkret prüfen:

  • Werden AVIF-Thumbnails tatsächlich generiert? (Verzeichnis /mediafiles/ prüfen)
  • Liefert der Server AVIF an unterstützende Browser aus? (Netzwerk-Tab im Browser-DevTools öffnen, Content-Type prüfen)
  • Funktioniert der Fallback auf WebP/JPEG bei älteren Browsern? (Accept-Header, Responsive Images testen)
  • Sind serverseitige Voraussetzungen erfüllt? (z. B. GD/Imagick mit AVIF-Support, korrekte MIME-Types in .htaccess)

Mailqueue im Backend einsehbar: Transparenz und schnelleres Debugging

Ein langersehntes Feature: Die Mailqueue ist jetzt direkt im Backend einsehbar. Du behältst damit jederzeit den Überblick, welche E-Mails versendet wurden, welche noch in der Warteschlange hängen und wo es möglicherweise Probleme gibt. Typische Situationen wie „Der Kunde hat keine Bestellbestätigung erhalten" oder „Passwort-Reset-Mails kommen nicht an" lassen sich nun viel schneller nachvollziehen und debuggen.

Flexiblere Versandkosten-Staffelung

Die Konfiguration der Versandkosten ist nun flexibler geworden. Du kannst komplexere Staffeln nach Gewicht, Warenwert, Sperrgut oder Inselzuschlägen sauberer abbilden – ohne auf Workarounds oder zusätzliche Plugins angewiesen zu sein. Das gibt dir mehr Kontrolle und spart Zeit bei der Einrichtung.

Bugfixes bei Grundpreisen: Rechtlich relevant und UX-kritisch

In Version 5.6.0 wurden gesammelt diverse Bugs im Umgang mit Grundpreisen (Einheitspreisen) behoben. Grundpreise sind rechtlich sensibel – falsche oder inkonsistente Darstellungen in Listen, auf Produktdetailseiten oder im Warenkorb können abmahnfähig sein. Die Bugfixes sorgen für korrekte Anzeige und konsistente Berechnung – ein wichtiger Punkt für Compliance und Vertrauen.

Technischer Unterbau: Smarty 4 und Smarty 5 im Dualbetrieb

Für Entwickler und alle mit individuellen Templates relevant: Es wurde ein Dualbetrieb von Smarty 4 und Smarty 5 implementiert. Das ist ein wichtiger Schritt für die Zukunftsfähigkeit des Shops und die Vorbereitung auf künftige PHP-Versionen. Wenn du ein Child-Template oder Custom-Anpassungen hast, solltest du prüfen, ob deine Smarty-Syntax kompatibel bleibt.

Breaking Changes: Was du beachten musst

Wie bei jedem größeren Update gibt es auch in 5.6.0 sogenannte Breaking Changes. Die wichtigsten:

  • Template-Anpassungen: Die Anzahl der Artikel in Galerie- und Listenansicht wurde vereinheitlicht. Das kann Layout und Darstellung beeinflussen.
  • Template-Diff erforderlich: Falls du ein individuelles Child-Template nutzt, solltest du unbedingt einen Template-Diff durchführen, um zu prüfen, welche Dateien sich geändert haben und welche Anpassungen du nachziehen musst.

Barrierefreiheit und Code Quality: Warum Version 5.5.x und 5.6.x mehr sind als „nur Updates"

Neben den sichtbaren Features hat JTL in den Versionen 5.5.x und 5.6.x massiv in Barrierefreiheit und Code Quality investiert. Das klingt zunächst abstrakt, hat aber direkte Auswirkungen auf dein Business:

Barrierefreiheit: Vorbereitung auf das BFSG

Im Fokus der neueren Versionen steht Barrierefreiheit. Viele Barrieren im NOVA-Template wurden abgebaut. Das ist wichtig, denn ab dem 28. Mai 2025 tritt das Barrierefreiheitsstärkungsgesetz (BFSG) in Kraft. Unternehmen, die digitale Angebote bereitstellen, müssen dann bestimmte Barrierefreiheitsstandards erfüllen. Die Verbesserungen im Standard-Template von JTL-Shop geben dir einen soliden Ausgangspunkt – auch wenn weitere Maßnahmen (z. B. Alt-Texte, Kontraste, verständliche Linktexte, barrierefreie Formulare und Prozesse) zusätzlich erforderlich bleiben.

Code Quality: Zukunftsfähigkeit und Stabilität

JTL hat die Code-Qualität durch folgende Maßnahmen deutlich verbessert:

  • Einführung von PSR-12-Standards: Einheitlicher, moderner Coding-Standard für bessere Wartbarkeit.
  • Ausbau von Unit-Tests: Mehr automatisierte Tests bedeuten weniger Bugs und stabilere Releases.
  • Tiefenprüfung mit PhpStan: Statische Code-Analyse deckt potenzielle Fehler frühzeitig auf.

PHP-Version und Server-Voraussetzungen: Was gilt wirklich?

JTL-Shop 5.6.0 läuft laut offizieller Dokumentation mit PHP 8.1, 8.2 und 8.3. Die Kompatibilität mit PHP 8.4 wird in aktuellen Entwicklungsversionen vorbereitet – prüfe vor einem PHP-Server-Upgrade unbedingt die offizielle JTL-Systemvoraussetzungen-Seite und teste dein komplettes Setup (inklusive Plugins und Custom Code) im Staging. Wenn du wissen willst, worauf es dabei konkret ankommt, hilft dir auch der Leitfaden zu JTL-Shop mit PHP 8.1.

Falls dein Server noch PHP 8.0 oder älter nutzt, solltest du jetzt ein PHP-Update in Absprache mit deinem Hoster einplanen. Achte dabei auch auf die Kompatibilität deiner Plugins, Payment-/Versand-Schnittstellen und individuellen Code-Anpassungen mit neueren PHP-Versionen.

Solltest du updaten? Entscheidungs-Framework für Online-Händler

Die Entscheidung für oder gegen ein Update hängt von mehreren Faktoren ab. Hier ein strukturiertes Framework, das dir hilft, die richtige Entscheidung zu treffen:

Kriterium Update zeitnah empfohlen Update geplant und getestet durchführen
Sicherheit und Support Alte Version wird bald nicht mehr unterstützt Aktuelle Version läuft stabil, kein akuter Handlungsdruck
Barrierefreiheit / BFSG BFSG-Deadline rückt näher, Template-Basis ist wichtig BFSG-Projekt läuft noch, Zeit für Tests vorhanden
Performance / UX AVIF, Ladezeiten und Stabilität sind Business-kritisch Performance ist akzeptabel, kein akuter Leidensdruck
Bugs / Grundpreise Bekannte Bugs betreffen dich direkt Keine bekannten Probleme in deinem Setup
Templates und Plugins Standard-Template, wenige Plugins, keine Custom-Anpassungen Individuelles Template, viele Plugins, Custom Code
Ressourcen und Timing Ruhige Phase, Team hat Kapazitäten, Staging verfügbar Peak-Saison, Kampagnen laufen, kein Staging, keine Zeit

Konkrete Empfehlungen:

  • Update zeitnah: Wenn du auf einer älteren Version bist (z. B. 5.4 oder früher), nur wenige oder keine individuellen Anpassungen hast und die neuen Features (AVIF, Barrierefreiheit, Bugfixes) für dich relevant sind.
  • Update geplant und getestet: Wenn du ein individuelles Template, viele Plugins, kritische Prozesse oder Custom Code nutzt. Hier ist ein Staging-System und ausführliches Testing Pflicht.
  • Nicht blind updaten: Wenn Plugin-Kompatibilität unklar ist, du kein Backup hast, kein Staging-System nutzt oder mitten in der Peak-Saison steckst.

Risiken und typische Stolperfallen beim JTL-Shop-Update

Ein Update ist nie risikofrei. Hier die häufigsten Probleme, die dir begegnen können – und wie du sie vermeidest:

Breaking Changes treffen Custom Templates und Child Themes

Wenn du ein individuelles Template nutzt, können Änderungen an der Struktur oder den Template-Dateien dein Layout oder Funktionen beeinträchtigen. Lösung: Führe vor dem Update einen Template-Diff durch, um zu sehen, welche Dateien sich geändert haben, und passe dein Template entsprechend an.

Plugin-Inkompatibilitäten nach Updates

Plugins – besonders von Drittanbietern außerhalb des JTL Extension Store – sind oft nicht sofort kompatibel mit neuen Shop-Versionen. Lösung: Prüfe vor dem Update die Kompatibilität im Extension Store oder beim Anbieter. Wichtig: Nicht alle Plugins blind deaktivieren – kategorisiere sie nach Kritikalität (Payment/Consent/Tracking vs. Nice-to-have) und teste im Staging, welche Plugins du vor dem Update wirklich deaktivieren musst.

Übersprungene Versionen führen zu unterschätzten Änderungen

Wer von 5.2 direkt auf 5.6 springt, übersieht leicht wichtige Änderungen aus 5.3, 5.4 und 5.5. Lösung: Lies alle Releaseposts der übersprungenen Versionen im JTL-Forum.

Fehlende Backups machen Rollback schwierig

Ohne vollständiges Backup (Dateien und Datenbank) ist ein Rollback im Fehlerfall kaum möglich. Lösung: Erstelle vor jedem Update ein vollständiges Backup und teste die Wiederherstellung einmal. Wichtig: Datenbank-Rollback nach einem Update ist nicht trivial – oft sind Strukturänderungen oder Datenmigrationen nicht einfach rückgängig zu machen. Rollback bedeutet Restore von Files und DB-Dump, nicht „zurückklicken". Wenn du dabei tiefer einsteigen willst, ist eine Anleitung zu JTL-Shop-Backups hilfreich.

Live-Update ohne Wartungsmodus gefährdet Bestellungen

Wenn du während des Updates im Live-Betrieb bleibst, können Kunden auf inkonsistente Zustände stoßen oder Bestellungen fehlschlagen. Lösung: Aktiviere den Wartungsmodus, bevor du mit dem Update beginnst.

WaWi/Worker läuft weiter und erzeugt inkonsistente Zustände

Wenn der JTL-Worker oder WaWi-Abgleich während des Updates weiterläuft, können Daten inkonsistent werden. Lösung: Stoppe den Worker und sperre den Shop für den Abgleich, bevor du mit dem Update beginnst.

Alte und verwaiste Dateien bleiben liegen

Nach einem Update können Dateien aus älteren Versionen auf dem Server verbleiben – ein potenzielles Sicherheitsrisiko. Lösung: Nutze die Diagnose-Funktion im Backend, um verwaiste Dateien zu identifizieren und zu löschen.

Anpassungen an .htaccess oder robots.txt falsch übernommen

Neue Versionen bringen oft Änderungen an .htaccess-Dateien mit. Wenn du deine alte .htaccess blind drüberkopierst, können Weiterleitungen, Sicherheitsregeln oder SEO-relevante Einstellungen verloren gehen. Lösung: Vergleiche deine angepasste .htaccess mit der neuen Version und übernimm Änderungen manuell. Teste nach dem Update: Robots.txt, Canonical-Tags, Noindex-Einstellungen, Weiterleitungen.

Schritt-für-Schritt-Anleitung: So führst du ein JTL-Shop-Update sicher durch

Die folgende Anleitung beschreibt das Update eines selbstgehosteten JTL-Shop innerhalb der Major-Version 5 (z. B. von 5.5.3 auf 5.6.0). Wenn du JTL-Hosting-Kunde bist, gelten andere Prozesse – wende dich in diesem Fall an den JTL-Support. Hinweis: Menüpunkte und Backend-Pfade können je nach JTL-Shop-Version leicht abweichen.

Voraussetzungen

  • Du hast mindestens JTL-Shop 5.0.0 installiert.
  • Du hast ein gültiges Abo/eine Edition, in der JTL-Shop enthalten ist.
  • Du hast die Systemvoraussetzungen für die Zielversion geprüft (z. B. PHP-Version, Speicher, Datenbank) – siehe offizielle JTL-Dokumentation.
  • Du hast Zugriff auf das JTL-Kundencenter und kannst die neue Version herunterladen.
  • Falls dein Setup noch zusätzliche Abhängigkeiten hat (z. B. Verschlüsselung/Loader), kläre das vorab – siehe auch JTL-Shop und Ioncube Loader.

Schritt 1: Vorbereitungen treffen

  • Wartungsmodus aktivieren: Melde dich im Backend an und gehe zu Darstellung, Einstellungen, Global. Wähle im Dropdown-Menü Wartungsmodus die Option Ja.
  • Datei-Backup erstellen: Sichere alle Dateien von JTL-Shop, insbesondere den Ordner /templates/ und die Datei /includes/config.JTL-Shop.ini.php.
  • WaWi-Abgleich stoppen: Führe ab jetzt keinen Abgleich mehr mit JTL-Wawi durch. Wenn du JTL-Worker nutzt, beende ihn oder sperre den Shop für den Abgleich.
  • Cache leeren: Gehe zu Administration, System, Cache und klicke auf Gesamten Objekt-Cache leeren. Je nach Hosting-Setup: Prüfe auch OPcache, APCu, Redis, Full-Page-Cache oder CDN-Caches (z. B. Cloudflare) und leere diese ebenfalls.
  • Plugin-Hygiene: Deinstalliere alle Plugins, die du nicht mehr brauchst, und entferne deren Dateien aus /includes/plugins und /plugins. Welche Plugins du vor dem Update deaktivieren solltest, hängt von deinem Setup ab: Kritische Plugins (Payment, Consent, Tracking) solltest du im Staging auf Kompatibilität testen, bevor du sie live deaktivierst. Erstelle ggf. Screenshots deiner aktiven Plugins, um später den Überblick zu behalten.
  • Datenbank-Backup erstellen: Erstelle ein Backup der JTL-Shop-Datenbank oder lasse es durch deinen Hoster anlegen.

Schritt 2: JTL-Shop-Dateien aktualisieren

  • Installationspaket herunterladen: Logge dich im JTL-Kundencenter ein, gehe zu Bestellungen und Lizenzen, Onlineshop, Shop Editionen und lade das Installationspaket herunter.
  • Paket entpacken: Entpacke die ZIP-Datei lokal auf deinem Rechner.
  • Unnötige Dateien löschen: Lösche im entpackten Paket den Ordner install und die Datei shopinfo.xml.
  • .htaccess und robots.txt anpassen: Wenn du individuelle Anpassungen vorgenommen hast, übernimm diese in den neuen Dateien. Wichtig: Überschreibe die neuen .htaccess-Dateien nicht blind mit den alten – neue Versionen enthalten oft wichtige Änderungen.
  • Templates schützen: Wenn du ein individuelles Template im Standard-Ordner nutzt (z. B. /templates/NOVA), benenne die neuen Standard-Templates im entpackten Paket um, damit deine Anpassungen nicht überschrieben werden.
  • Dateien hochladen: Je nach Hosting-Setup und Deployment-Workflow gibt es verschiedene Optionen: FTP/SFTP (im binären Modus), SSH/SCP, Git-basierte Deployments, Atomic Releases oder CI/CD-Pipelines. Wähle die Methode, die zu deinem Setup passt. Bei FTP: Stelle deinen FTP-Client auf binären Transfermodus ein und prüfe, ob alle Dateien erfolgreich übertragen wurden. Lade die entpackten Dateien über die bestehenden JTL-Shop-Dateien (Ordner zusammenführen, vorhandene Dateien überschreiben).

Schritt 3: Datenbank updaten

  • Backend aufrufen: Melde dich im Backend von JTL-Shop an. Du wirst automatisch zum Update-Menü weitergeleitet. Falls nicht, gehe zu Administration, System, Aktualisieren.
  • Abgesicherter Modus: Wir empfehlen, dich im abgesicherten Modus anzumelden (Klick auf Erweitert im Anmeldefenster).
  • Weiteres Backup erstellen: Klicke auf Sicherungskopie, um ein weiteres Datenbank-Backup zu erstellen. Es wird im Verzeichnis /export/backup abgelegt.
  • Datenbank-Update starten: Klicke auf Datenbank-Update starten.
  • Bei Fehler: Dokumentiere den Fehler als Screenshot und wende dich an den JTL-Support oder deinen JTL Service Partner. Breche das Update nicht halb ab – ein Rollback erfordert das Zurückspielen von Dateien und Datenbank.

Schritt 4: Verwaiste Dateien löschen (Sicherheitsrelevant)

  • Gehe zu Administration, Fehlerbehebung, Diagnose, Dateistruktur, Details.
  • Prüfe, ob verwaiste Dateien angezeigt werden.
  • Lösche diese Dateien direkt im Backend oder generiere ein Skript, das du deinem Hoster oder Service Partner übergeben kannst.
  • Wichtig: Verwaiste Dateien aus alten Versionen können Sicherheitslücken enthalten – lösche sie daher unbedingt.

Schritt 5: Nacharbeiten durchführen

  • Shop-Funktion prüfen: Teste wichtige Funktionen wie Registrierung, Checkout, E-Mail-Versand, Zahlungsarten, Versandarten, Steuern und Grundpreise – auch im Wartungsmodus (solange du im Backend angemeldet bist, siehst du das Frontend).
  • Template prüfen: Wenn du ein individuelles Template nutzt, prüfe, ob Layout und Funktionen korrekt sind. Teste gegen das Standard-Template, um Fehlerquellen einzugrenzen. Bei Problemen: Template-Diff durchführen und Anpassungen durch deinen Entwickler oder JTL Service Partner vornehmen lassen.
  • Plugins aktualisieren und reaktivieren: Gehe zu Plugins, Meine Käufe und aktualisiere alle Plugins. Reaktiviere sie anschließend nacheinander, um Fehlerquellen zu isolieren. Hinweis: Plugins außerhalb des Extension Store müssen ggf. separat aktualisiert werden – wende dich an die jeweiligen Anbieter.
  • E-Mail-Vorlagen prüfen: Nach einem Update können E-Mail-Vorlagen aktualisiert worden sein. Gehe zu Administration, E-Mail, Vorlagen und klicke bei den relevanten Vorlagen auf Zurücksetzen. Wichtig: Sichere deine individuellen Anpassungen vorher, da sie beim Zurücksetzen verloren gehen. Bei Sprachen außer Deutsch und Englisch werden Inhalte ggf. geleert.
  • Wartungsmodus deaktivieren: Gehe zu Darstellung, Einstellungen, Global und deaktiviere den Wartungsmodus.
  • WaWi-Abgleich und Worker wieder aktivieren.
  • Systemkritische Checks: Prüfe nach dem Update: Cronjobs/Queue-Worker (laufen sie wieder?), E-Mail-Transport (SMTP-Verbindung ok?), Payment Webhooks/Callback-URLs (funktionieren sie nach dem Update?), Tracking-/Feed-Endpunkte (z. B. Google Merchant, Facebook), Robots.txt, Canonical-Tags, Noindex-Einstellungen (nach Wartungsmodus).
  • Monitoring: Achte in den nächsten Tagen auf Backend-Hinweise (Glocke), Logbücher unter Administration, Fehlerbehebung, Logbuch sowie E-Mail-Logs unter Administration, E-Mail, Logbuch.

Templates und Breaking Changes: Warum ein Template-Diff Pflicht ist

Wenn du ein individuelles Template oder ein Child-Template nutzt, sind Breaking Changes die größte Herausforderung beim Update. Hier die wichtigsten Punkte:

Warum Templates bei Updates kritisch sind

JTL-Shop-Updates bringen oft Änderungen an Template-Dateien mit sich – sei es durch neue Funktionen, Bugfixes oder Strukturanpassungen. Wenn dein Template diese Änderungen nicht nachvollzieht, kann es zu Layout-Fehlern, fehlenden Funktionen oder im schlimmsten Fall zu einem nicht funktionierenden Checkout kommen.

Was ist ein Template-Diff?

Ein Template-Diff zeigt dir, welche Dateien sich zwischen zwei Versionen geändert haben. Du kannst so gezielt prüfen, welche Anpassungen du in deinem Custom Template nachziehen musst. JTL stellt für jede Version ein Template-Diff bereit – zum Beispiel von NOVA 5.4.1 zu 5.5.0.

Vorgehen bei Child-Templates

  • Diff herunterladen: Lade die Diff-Datei im JTL-Forum oder im Release-Post herunter.
  • Geänderte Dateien identifizieren: Prüfe, welche Dateien sich geändert haben und ob sie in deinem Child-Template überschrieben wurden.
  • Priorisieren: Kritische Bereiche wie Checkout, Account, Produktdetail und Warenkorb solltest du zuerst prüfen und testen.
  • Testen: Teste alle Änderungen im Staging, bevor du sie live schaltest.

Plugins und Kompatibilität: Der häufigste Update-Blocker

Plugins sind der häufigste Grund, warum Updates fehlschlagen oder verschoben werden. Hier die wichtigsten Punkte:

Warum Plugins problematisch sein können

Plugins greifen tief in Shop-Funktionen ein – von Payment über Versand bis hin zu Tracking, Consent, SEO und Template-Anpassungen. Wenn ein Plugin nicht kompatibel ist, kann es den Shop verlangsamen, Fehler verursachen oder sogar den Checkout blockieren.

Vorgehenslogik für Plugins

  • Vor dem Update: Prüfe im JTL Extension Store oder beim Anbieter, ob das Plugin mit der neuen Shop-Version kompatibel ist. Aktualisiere ggf. das Plugin, bevor du den Shop updatest.
  • Während des Updates: Nicht alle Plugins müssen zwingend deaktiviert werden – teste im Staging, welche Plugins Probleme machen. Kritische Plugins (Payment, Consent, Tracking) solltest du gezielt auf Kompatibilität prüfen. Deaktivierung kann Hook-Reihenfolgen, DB-Migrationen oder Config-Verluste beeinflussen.
  • Nach dem Update: Aktualisiere alle Plugins über Plugins, Meine Käufe und reaktiviere sie schrittweise – Plugin für Plugin. So kannst du Fehlerquellen isolieren.

Besonders sensible Plugin-Kategorien

  • Payment: Zahlungsarten sind geschäftskritisch – teste nach dem Update unbedingt alle Payment-Flows und prüfe Webhooks/Callback-URLs.
  • Versand: Versandarten und -kosten müssen korrekt berechnet und angezeigt werden.
  • Tracking und Consent: Google Analytics, Google Tag Manager, Cookie-Banner – hier ist Compliance wichtig.
  • SEO/URL: URL-Strukturen, Canonicals, Weiterleitungen – Fehler hier können dein Ranking beschädigen.
  • Templates/Theme-Extensions: Layout-Anpassungen können durch Shop-Updates betroffen sein.

Tipp: Plugin-Anbieter können ihre Plugins frühzeitig gegen neue Shop-Versionen testen, bevor diese offiziell erscheinen. Nutze daher Plugin-Updates zeitnah und kommuniziere mit Anbietern, wenn du auf ein Update warten musst.

Barrierefreiheit und BFSG: Was Updates leisten – und was nicht

Die Verbesserungen im JTL-Shop-Template in Richtung Barrierefreiheit sind wichtig, decken aber nicht alle Anforderungen des BFSG ab. Hier eine praxisnahe Einordnung:

Was Shop-Updates leisten können

JTL hat in den Versionen 5.5.x und 5.6.x viele Barrieren im NOVA-Template abgebaut – etwa in den Bereichen Tastaturnavigation, Fokus-Stati, ARIA-Labels, semantische HTML-Struktur und Kontraste. Das gibt dir einen soliden Ausgangspunkt.

Was ein Update alleine nicht löst

Barrierefreiheit hängt nicht nur vom Template ab, sondern auch von:

  • Inhalten: Alt-Texte für Bilder, verständliche Linktexte, Kontraste, Formularbeschriftungen, barrierefreie PDFs und Medien.
  • Prozessen: Tests mit Tastatur, Screenreader-Tests, Fokus-Reihenfolge, verständliche Fehlermeldungen.
  • Plugins und Custom Code: Auch individuell eingebundene Funktionen müssen barrierefrei sein.

Quick Wins nach dem Update: Mini-Checkliste Barrierefreiheit

  • Tastatur-Navigation im Checkout testen: Kannst du den kompletten Bestellprozess nur mit der Tab-Taste durchlaufen?
  • Formular-Fehlermeldungen prüfen: Sind Fehlermeldungen verständlich, eindeutig und mit den betroffenen Feldern verknüpft?
  • Kontraste/Buttons/Focus-Stati: Stichprobenartig prüfen, ob Buttons und Links ausreichend Kontrast haben und der Fokus sichtbar ist.
  • Alt-Texte für wichtige Bilder: Kategorie- und Produktbilder sollten aussagekräftige Alt-Texte haben.

Performance und AVIF: Warum Bildoptimierung im Commerce stark wirkt

Bilder sind im E-Commerce der größte Performance-Faktor. Mit der Unterstützung von AVIF in JTL-Shop 5.6.0 hast du eine einfache Möglichkeit, Ladezeiten zu verbessern – ohne Qualitätsverlust.

Warum Bildoptimierung im Commerce so wichtig ist

  • Largest Contentful Paint (LCP): Bilder sind oft das größte Element, das zuerst geladen wird – je schneller, desto besser das Ranking.
  • UX und Conversion: Schnellere Ladezeiten bedeuten weniger Absprünge und höhere Conversion Rates.
  • Mobile: Auf mobilen Endgeräten ist Bildoptimierung besonders wichtig – dort sind Bandbreiten oft geringer.

AVIF in der Praxis

AVIF bietet bei gleicher Qualität deutlich bessere Komprimierung als JPEG oder WebP. Besonders in Kategorie-Übersichten, Produktdetailseiten, Galerien und Slidern wirkt sich das positiv aus. Prüfe nach dem Update:

  • Ladezeit-/Core-Web-Vitals-Stichprobe vorher/nachher: Nutze Tools wie PageSpeed Insights oder Lighthouse.
  • Bildgrößen und Format-Auslieferung prüfen: Öffne die Browser-DevTools (Netzwerk-Tab), lade eine Produktseite und prüfe den Content-Type der Bilder. Wird AVIF tatsächlich ausgeliefert? Falls nicht, prüfe die Server-Konfiguration (GD/Imagick mit AVIF-Support, MIME-Types in .htaccess, Accept-Header).

Mailqueue, Versandkosten, Grundpreise: Prozess- und Compliance-Verbesserungen

Mailqueue: Transparenz und schnelleres Debugging

Typisches Problem: Ein Kunde meldet, er habe keine Bestellbestätigung erhalten. Ohne Mailqueue musstest du Logs durchsuchen oder blind raten. Mit der neuen Funktion kannst du direkt im Backend nachvollziehen, welche E-Mails versendet wurden, welche hängen und wo es Probleme gibt. Praxis-Tipp: Nach dem Update einmal gezielt Testmails und den Bestellprozess prüfen. Nutze die Mailqueue als festen Bestandteil deines Incident-Handlings.

Versandkosten: Mehr Flexibilität für komplexe Regeln

Beispielhafte Situationen:

  • Gewichts- und Warenwertstaffeln
  • Sperrgut-Zuschläge
  • Inselzuschläge
  • Mischkörbe mit unterschiedlichen Versandarten

Was „mehr Flexibilität in der Staffelung" bedeutet: Du kannst komplexere Regeln sauberer abbilden, ohne auf Workarounds oder zusätzliche Plugins angewiesen zu sein.

Grundpreise: Warum Bugfixes wichtig sind

Grundpreise sind rechtlich sensibel – falsche oder inkonsistente Darstellung kann abmahnfähig sein. Typische Fehlerbilder: falsche Einheit, inkonsistente Darstellung in Listen vs. Detailseite, fehlerhafte Berechnung bei Varianten. Nach dem Update prüfen: Stichproben in Kategorien, Suche, Produktdetail und Warenkorb.

Staging und Testing: Warum professionelle Shops nie live updaten

Wenn Umsatz an deinem Shop hängt, ist ein Staging-System Pflicht. Hier testest du das Update vollständig, bevor du es live schaltest. Was solltest du im Staging testen?

  • Checkout End-to-End: Kompletter Bestellprozess inklusive Payment und Versand.
  • WaWi-Abgleich/Worker-Flow: Funktioniert der Datenabgleich reibungslos?
  • E-Mail-Versand und Vorlagen: Werden alle E-Mails korrekt versendet?
  • SEO: Canonicals, Robots, Weiterleitungen – besonders wichtig, wenn .htaccess angepasst wurde.
  • Template: Kritische Seiten wie Start, Kategorie, PDP, Warenkorb, Checkout, Mein Konto.
  • Payment Webhooks/Callback-URLs: Funktionieren sie nach dem Update?
  • Tracking/Feeds: Google Merchant, Facebook, andere Schnittstellen. Wenn du stark auf Produktfeeds setzt, lohnt sich zusätzlich der Überblick zu JTL-Shop und Google Shopping.

Freigabe-Kriterien: Go/No-Go-Checkliste

  • Alle kritischen Funktionen getestet und fehlerfrei
  • Plugins kompatibel und aktualisiert
  • Template korrekt dargestellt
  • Performance-Stichprobe positiv
  • Backup vorhanden und getestet
  • Rollback-Plan definiert (RTO/RPO, Downtime-Fenster, Restore-Prozess)

Rollback-Plan: Was tun, wenn das Update schief geht?

Ein Rollback ist nicht trivial – besonders bei Datenbank-Änderungen. Hier die wichtigsten Punkte:

  • Rollback bedeutet Restore von Files und DB-Dump: Du kannst nicht einfach „zurückklicken" – du musst Dateien und Datenbank wiederherstellen.
  • Datenbank-Downgrade ist i. d. R. nicht möglich: Strukturänderungen oder Datenmigrationen können nicht einfach rückgängig gemacht werden.
  • RTO/RPO definieren: Wie viel Downtime ist akzeptabel? Wie viele Daten darfst du verlieren? (Recovery Time Objective / Recovery Point Objective)
  • Downtime-Fenster planen: Wann ist der beste Zeitpunkt für ein Update? (nachts, außerhalb der Peak-Zeiten, nicht während Kampagnen)
  • Rollback-Prozess testen: Teste einmal die Wiederherstellung von Backup-Dateien und DB-Dump, bevor du das Update live durchführst.

Checklisten für dein Update: Vorbereitung, Durchführung, Nacharbeiten

Checkliste: Vor dem Update

  • Wartungsmodus aktiviert
  • Datei-Backup erstellt (inkl. Templates und config)
  • Datenbank-Backup erstellt
  • WaWi-Abgleich gestoppt, Worker beendet oder Shop gesperrt
  • Alle Caches geleert (Objekt-Cache, OPcache, APCu, Redis, Full-Page-Cache, CDN)
  • Nicht genutzte Plugins deinstalliert und Dateien entfernt
  • Plugin-Kompatibilität geprüft (Extension Store oder Anbieter kontaktiert)
  • Systemvoraussetzungen geprüft (PHP-Version, Speicher, Datenbank) – siehe offizielle JTL-Dokumentation
  • Template-Diff heruntergeladen (falls individuelles Template)
  • Rollback-Plan definiert (RTO/RPO, Downtime-Fenster, Restore-Prozess)

Checkliste: Während des Updates

  • Installationspaket heruntergeladen und lokal entpackt
  • Ordner install und Datei shopinfo.xml gelöscht
  • .htaccess und robots.txt angepasst (nicht blind überschrieben)
  • Standard-Templates umbenannt (falls individuelles Template im Standard-Ordner)
  • Dateien per FTP/SFTP/SSH/Deployment-Tool hochgeladen (je nach Setup)
  • Alle Dateien erfolgreich übertragen (keine Fehler im FTP-Log oder Deployment-Log)
  • Backend aufgerufen, automatisch ins Update-Menü weitergeleitet
  • Weiteres Datenbank-Backup im Update-Menü erstellt
  • Datenbank-Update gestartet
  • Bei Fehler: Screenshot erstellt, Support kontaktiert

Checkliste: Nach dem Update

  • Verwaiste Dateien gelöscht (Diagnose, Dateistruktur)
  • Shop-Funktion im Wartungsmodus getestet (Registrierung, Checkout, E-Mails)
  • Template geprüft (Layout, Funktionen, gegen Standard-Template getestet)
  • Plugins aktualisiert über Meine Käufe und Plugin-Manager
  • Plugins nacheinander reaktiviert und getestet
  • E-Mail-Vorlagen geprüft und ggf. zurückgesetzt
  • Wartungsmodus deaktiviert
  • WaWi-Abgleich und Worker wieder aktiviert
  • Cronjobs/Queue-Worker geprüft (laufen sie wieder?)
  • E-Mail-Transport geprüft (SMTP-Verbindung ok?)
  • Payment Webhooks/Callback-URLs getestet
  • Tracking-/Feed-Endpunkte geprüft (Google Merchant, Facebook)
  • Robots.txt, Canonical-Tags, Noindex-Einstellungen geprüft (nach Wartungsmodus)
  • Backend-Hinweise (Glocke), Logbücher und E-Mail-Log geprüft
  • Performance-Stichprobe durchgeführt (Core Web Vitals)
  • AVIF-Auslieferung geprüft (Netzwerk-Tab, Content-Type, Fallback)
  • Grundpreise stichprobenartig geprüft
  • Barrierefreiheit-Quick-Checks durchgeführt

Wann externe Hilfe sinnvoll ist – und was du vorbereiten solltest

In folgenden Situationen solltest du externe Hilfe in Betracht ziehen:

  • Stark angepasstes Template, viele Plugins, unklare Zuständigkeiten
  • Hoher Umsatzdruck, kein Staging-System, keine Erfahrung mit Updates
  • Zeitdruck (z. B. BFSG-Deadline, Peak-Saison)
  • Komplexe Prozesse (WaWi-Integration, Custom Code, Schnittstellen)

Welche Infos du für Support/Servicepartner bereithalten solltest:

  • Shop-Version (alt und Ziel-Version)
  • PHP-Version
  • Plugin-Liste und Versionen (Screenshot oder Export)
  • Template-Basis (Standard, Child, Custom)
  • Fehlermeldungen/Screenshots
  • Logs (Backend-Hinweise, Logbuch, E-Mail-Log)
  • Repro-Schritte (wie lässt sich der Fehler nachstellen?)

Dein Update-Fahrplan: Kontrolliert verbessern statt blind updaten

Du willst nicht „einfach updaten", sondern kontrolliert verbessern. Updates sind kein Selbstzweck, sondern Risikomanagement, Performance/Compliance und Zukunftsfähigkeit. Die JTL Shop aktuelle Version 5.6.0 bringt dir wichtige Verbesserungen in den Bereichen Performance (AVIF), Barrierefreiheit (BFSG-Vorbereitung), Stabilität (Bugfixes Grundpreise), Transparenz (Mailqueue) und Flexibilität (Versandkosten). Gleichzeitig birgt jedes Update Risiken – besonders bei individuellen Templates, vielen Plugins oder komplexen Prozessen.

Deine nächsten Schritte:

  1. Version und Setup erfassen: Welche Version nutzt du aktuell? Welche Plugins, welches Template, welche Anpassungen?
  2. Releaseposts lesen: Prüfe alle Releaseposts der Versionen, die du überspringen würdest.
  3. Staging planen: Richte ein Staging-System ein oder nutze ein bestehendes. Teste dort das Update vollständig.
  4. Backups erstellen: Dateien und Datenbank – und teste die Wiederherstellung einmal.
  5. Update durchführen: Folge der Schritt-für-Schritt-Anleitung in diesem Artikel.
  6. QA und Monitoring: Teste alle kritischen Funktionen, reaktiviere Plugins schrittweise und beobachte Logs und Backend-Hinweise in den ersten Tagen.

Wenn du Unterstützung benötigst – sei es bei der Planung, der Durchführung oder der Nacharbeit –, wende dich an einen JTL Service Partner oder den JTL-Support. Mit der richtigen Vorbereitung und einem strukturierten Vorgehen wird dein Update zum kontrollierten Schritt nach vorn – nicht zum Risiko.