Admorris Pro 3 Update Guide

Admorris Pro 3 Update Guide

Die neue admorris Pro Version 3.0 bedeutet einen großen technischen Fortschritt und bringt gleichzeitig viele neue Features. Technisch gibt es allen voran folgende Änderungen:
  1. Umstellung von LESS auf SASS
  2. Code Splitting von LESS und JS
  3. Neuer Checkout
  4. Anpassungen an das Barrierefreiheitsgesetz
Unser Migrationsassistent kann automatisch fast alle LESS auf SASS User-Styles konvertieren und fast alle Element-CSS-Klassen anpassen. Bei Verwendung von User-Styles und Elements sollten Sie diese jedoch nachkontrollieren, da ggf. noch kleinere Anpassungen notwendig sein können. Bei Child-Templates-Dateien müssen leider, wie bei jedem Update, manuell nachgezogen werden.

Idea
Gerne unterstützen wir und unsere Partner Sie bei diesem Prozess. Vereinbaren Sie ein unverbindliches Update-Beratungsgespräch: https://booking.epicgroup.at/#/Update-Service
Info
Die Version 2.x.x wird von uns noch bis 1.1. 2026 mit Bugfixes weiter supportet. Neue Features kommen nur noch ab Version 3.x.x.


Schritt für Schritt Anleitung für ein Update von admorris Pro 2.x.x auf 3.x.x: 

Alert
Wir empfehlen alle JTL-Shopupdates und Pluginupdates (speziell bei Major Versionen) immer in einer getrennten Entwicklungsumgebung einmal durchzuspielen. Dabei können eventuell auftretende Probleme frühzeitig erkannt werden und noch vor dem eigentlichen Liveupdate behoben werden.
  1. Systemvoraussetzungen prüfen
    1. Die Version 3.0 benötigt:
      1. JTL-Shop 5.4.0 bis 5.4.1
      2. PHP Version: 8.2 - 8.3

  2. Backup erstellen
    1. Erstellen Sie ein Backup von
      1. JTL-Shop Datenbank
      2. Templateordner

  3. Wartungsmodus des Shops aktivieren

  4. Update auf 2.7.x
    1. Führen Sie ein Update auf die Zwischenversion 2.7.x durch um auf Version 3.0 updaten zu können.

  5. Update auf 3.x.x
    1. Führen Sie das Update auf Version 3.x durch.

  6. Migrationsassistent ausführen
    1. Falls Sie Custom User Styles oder Elements verwenden, führen Sie diese Schritte im Migrationsassistent durch.

  7. Kontrollieren Sie Ihre Styles und Element-Anpassungen
    1. Wenn Sie viele Anpassungen über User-Styles oder Sales Booster gemacht haben, sollten Sie ggf. kurz überprüfen, ob alles noch so funktioniert wie gewünscht.
    2. Der Migrationsassistent passt soweit es geht alle Klassen und Styles an. In wenigen Spezialfällen muss aber leider manuell nachgearbeitet werden (siehe unten).
    3. Zusätzlich können Sie optional Ihre User-Styles zur Performanceoptimierung in die entsprechenden Dateien aufteilen (siehe unten).

  8. Kontrollieren Sie die Experteneinstellungen
    1. Prüfen Sie ob Ihre Sales Booster auch dort angezeigt werden, wo Sie das möchten.
    2. Die Experteneinstellungen des Sales Booster Bonuspunkte (Anzeige im Kundenkonto) könnte ggf. eine Anpassung benötigen, wenn Sie nicht das admorris Pro Template verwenden.

  9. Child-Template nachziehen
    1. Falls Sie ein Child-Template verwenden müssen Sie die Files und Inhalte an die neue Templatestruktur anpassen.

  10. Testing
    1. Testen Sie alle Standardprozesse in Ihrem Shop
      1. Kundenkonto erstellen
      2. Login
      3. Testbestellungen mit allen wichtigen Zahlungsarten

  11. Wartungsmodus deaktivieren


Änderungen & Migrationen im Detail

Nachfolgend finden Sie Details zu den einzelnen Migrationsschritten von admorris Pro 2.x.x auf 3.x.x.

User Styles: LESS zu SASS

admorris pro verwendet SASS 1.80 (Dart SASS). Diese Version ist neuer als die im JTL Shop mitgelieferte Version und bringt einige Neuerungen wie die bessere Unterstützung neuer CSS Syntax, aber auch einige Breaking Changes

Zusätzlich zu den globalen User Styles gibt es nun für die verschiedenen Seitentypen eigene User-Styles Dateien. Dadurch kann die Performance verbessert werden. Die Bootstrap und Template Styles werden auch entsprechend aufgeteilt.

Zusätzlich gibt es auch ein non-critical.scss File, das asynchron geladen wird und für Inhalte "Below the Fold" gedacht ist. Es enthält die Bootstrap Komponenten von Dropdowns, Toasts, Modals, Tooltips, Popover, Print Styles und vom Template die Styles für Footer, Offcanvas Menü, Scroll-to-Top Button, Home News Slider und Paginierung.

Wenn Non-Critical Styles überschrieben werden sollen ist es wichtig, auch das eigene User-Styles File dafür zu verwenden, weil die Styles sonst nicht in der richtigen Reihenfolge geladen werden.

Es empfiehlt sich zur Performanceverbesserung die Styles in die entsprechenden Files aufzuteilen.

Variablen von Bootstrap

Variablen, die Bootstrap Variablen überschreiben sollen, müssen in das user-styles/_user-variables.scss File eingefügt werden. Variablen aus den _user-variable.scss können auch Backend Settings überschreiben, die dann nicht mehr funktionieren.

Berechnungen mit SASS Variablen

SASS Variablen können auch in calc verwendet werden. Division außerhalb von calc mit / sind in Dart SASS deprecated. In calc wird alles Berechnet was in SASS berechnet werden kann. Der Rest wird dem Browser in einer calc Funktion ausgegeben.

Neue Sass Features:

  • Module System
  • Color Functions mit neuen Features

Sass Syntax Hinweise:

  • Interpolation
  • @if
  • @debug
  • @use
  • @function

Lightningcss Postprocessing

Die Styles werden nach dem Kompilieren zu CSS noch mit Lightning CSS mit prefixes versehen. Dadurch kann die neuere @media range syntax verwendet werden, die dann automatisch umgewandelt wird.

@media (width >= 400px) { ... }
// Beispiel mit Verwendung der Bootstrap breakpoint Getter Funktion
@media (width < breakpoint-min(lg)) { ... }

Eine ausführliche Liste finden sie hier: Transpilation.

Das Minifying wird auch von Lightning CSS übernommen. Lightning CSS sorgt dabei für den kleinstmöglichen output:

.foo {
  padding-top: 1px;
  padding-left: 2px;
  padding-bottom: 3px;
  padding-right: 4px;
}

Wird umgewandelt zu:

.foo{padding:1px 4px 3px 2px}

Update der User-Styles von LESS zu SCSS (SASS) mit dem Migrationsassistent

Nach dem Update von admorris Pro auf Version 3 können sie auswählen ihre User-Styles automatisch von LESS ins SCSS Format konvertieren zu lassen. Variablennamen und Mixins können automatisch konvertiert werden. Aber die Konvertierung umfasst nicht alle Features von LESS. Die in LESS eingebauten Functions können allerdings nicht konvertiert werden.

Wie ist bei Fehlern vorzugehen: Zeile des Fehlers im User-Styles Editor suchen. Syntaxfehler beheben oder Zeile auskommentieren. Überprüfen ob kein Fehler mehr kommt wenn man "Speichern und Kompilieren" Ausführt.

Elements & Child Template Migration

Anpassen von Bootstrap Klassen.

Bootstrap 3.xBootstrap 4
.col--offset-.offset-*
.col--push-.order-*-2
.col--pull-.order-*-1
.panel.card
.panel-heading.card-header
.panel-title.card-title
.panel-body.card-body
.panel-footer.card-footer
.panel-primary.card.bg-primary.text-white
.panel-success.card.bg-success.text-white
.panel-info.card.text-white.bg-info
.panel-warning.card.bg-warning
.panel-danger.card.bg-danger.text-white
.well.card.card-body
.thumbnail.card.card-body
.list-inline > li.list-inline-item
.dropdown-menu > li.dropdown-item
.nav navbar > li.nav-item
.nav navbar > li > a.nav-link
.navbar-right.ml-auto
.navbar-btn.nav-item
.navbar-fixed-top.fixed-top
.nav-stacked.flex-column
.btn-default.btn-secondary
.img-responsive.img-fluid
.img-circle.rounded-circle
.img-rounded.rounded
.form-horizontal(removed)
.radio.form-check
.checkbox.form-check
.input-lg.form-control-lg
.input-sm.form-control-sm
.control-label.col-form-label
.table-condensed.table-sm
.pagination > li.page-item
.pagination > li > a.page-link
.item.carousel-item
.help-block.form-text
.pull-right.float-right
.pull-left.float-left
.center-block.mx-auto.d-block
.hidden-xs.d-none
.hidden-sm.d-sm-none
.hidden-md.d-md-none
.hidden-lg.d-lg-none
.visible-xs.d-block.d-sm-none
.visible-sm.d-none.d-sm-block.d-md-none
.visible-md.d-none.d-md-block.d-lg-none
.visible-lg.d-none.d-lg-block.d-xl-none
.label.badge
.badge.badge.badge-pill

    • Related Articles

    • JTL-Shop 5.2 Update mit admorris Pro

      Bevor Sie ein Update in Erwägung ziehen, beachten Sie folgende Punkte: Ist Ihr Server mit den Anforderungen des JTL-Shop 5.2 kompatibel? PHP 8.1 fähig! Sind alle Ihre notwendigen Plugins bereits kompatibel? Wenden Sie sich dazu am besten direkt an ...
    • admorris Pro Update von Shop4 auf Shop5

      Achtung: Stellen Sie vor dem Shopupdate sicher, dass Sie die Systemvoraussetzungen für den JTL-Shop5 erfüllen. Insbesondere, dass Ihr Webserver auf 64bit basiert! Wenn Sie im Shop5 Pluginupdates auf einem 32bit System durchführen, werden wichtige SQL ...
    • Update admorrisPro

      Ein Update von admorrisPro verläuft etwas anders als von einem Plugin aus dem Extension Store von JTL. Allgemein wird das Update unseres Plugins im Backend von admorrisPro selbst durchgeführt und nicht über meine Käufe wie bei anderen Plugins. Auf ...
    • Custom JavaScript Code im admorris Pro Template

      Shop5 Die Funktionsweise Javascript über loadjs zu laden, funktioniert immer noch, aber es gibt im Shop5 inzwischen einen einfacheren Weg. Inline Scripts Wenn Sie ein Inline-Skript einfügen wollen, das jQuery oder eine andere vom Template geladene ...
    • JTL Paypal Checkout & admorris Pro Template

      Plugins des JTL-Shops sind standardmäßig für das NOVA Template vorkonfiguriert. Es kann daher sein, dass für andere Templates einige Einstellungen angepasst werden müssen – so auch der Fall bei der Nutzung des JTL PayPal Checkout-Plugins in ...