HyvaTheme — Hyvä Theme Erweiterungen¶
Extension for Magento 2¶
Bedienungsanleitung¶
CopeX GmbH
Web: https://copex.io
Email: office@copex.io
Inhaltsverzeichnis¶
| Abschnitt | Seite |
|---|---|
| 1 Voraussetzungen | 2 |
| 2 Konfiguration | 2 |
| 3 ViewModels | 2 |
| 3.1 Bild-ViewModels | 2 |
| 3.2 Warenkorb und Checkout | 3 |
| 3.3 Hilfsfunktionen | 3 |
| 4 Plugins | 4 |
| 4.1 Page Builder und Alpine.js Kompatibilität | 4 |
| 4.2 Konfigurierbares Produkt JSON | 4 |
| 4.3 Store-Switcher Erweiterung | 4 |
| 5 Frontend-JavaScript-Hilfsfunktionen | 5 |
1 Voraussetzungen¶
- Magento 2.4 oder höher
- PHP 8.1 oder höher
- Hyvä Theme installiert und aktiv
2 Konfiguration¶
Dieses Modul hat keine Konfiguration im Backend. Es erweitert das Hyvä Theme automatisch nach der Installation.
3 ViewModels¶
Das Modul stellt mehrere ViewModels bereit, die in Hyvä-Templates verwendet werden können.
3.1 Bild-ViewModels¶
ViewModel\Image — Verwaltet Bild-Dateipfade, lokale URL-Erkennung und das Zuschneiden/Skalieren von Bildern:
- Konvertiert externe Bild-URLs in lokale Dateipfade für serverseitiges Resize
- Erstellt skalierte/beschnittene Bildversionen im Magento-Cache-Verzeichnis
- Bietet einen sicheren Fallback bei nicht auflösbaren URLs
ViewModel\ImageTag — Generiert responsive Bild-HTML mit srcset:
- Erstellt <picture> und <img>-Elemente mit konfigurierbaren Breakpoints
- Unterstützt Lazy-Loading und fetchpriority-Attribute
- Wird in Hyvä-Templates für Hero-Bilder, Produktbilder und Banner verwendet
3.2 Warenkorb und Checkout¶
ViewModel\Cart — Stellt Warenkorb-Hilfsfunktionen für Templates bereit.
Plugin ForceGuestCart — Stellt sicher, dass die Gast-Warenkorb-ID vor dem getQuote()-Aufruf existiert. Verhindert Race-Conditions beim Laden des Gast-Warenkorbs.
Plugin Magento/Checkout/CustomerData/Cart — Synchronisiert Gast- und Kunden-Quote-Flag-Übergänge, um inkonsistente Zustände im Checkout zu vermeiden.
3.3 Hilfsfunktionen¶
| ViewModel | Funktion |
|---|---|
AppState |
Gibt den aktuellen Magento-Anwendungsstatus zurück |
Request |
Stellt Zugriff auf Request-Parameter für Templates bereit |
Cms |
CMS-Hilfsfunktionen für Templates |
Attribute |
Produktattribut-Hilfsfunktionen |
GiftMessage |
Zugriff auf Geschenknachrichten-Daten |
ShippingInfo |
Versandkosten-Informationen für Produktseiten |
Product |
Allgemeine Produkt-Hilfsfunktionen |
LogoPathResolver |
Auflösung des Logo-Dateipfads |
4 Plugins¶
4.1 Page Builder und Alpine.js Kompatibilität¶
Plugin PageBuilder/OverrideTemplatePlugin — Sorgt dafür, dass Alpine.js-Attribute (x-data, @click, etc.) durch den Page Builder nicht entfernt oder verändert werden. Dekodiert außerdem HTML-Entitäten in Page Builder-Ausgaben korrekt.
Ohne dieses Plugin würde der Magento Page Builder Alpine.js-Attribute aus dem HTML-Code entfernen, was Hyvä-Komponenten auf CMS-Seiten funktionslos machen würde.
4.2 Konfigurierbares Produkt JSON¶
Plugin ConfigurableData — Reichert die JSON-Konfigurationsdaten konfigurierbarer Produkte mit zusätzlichen Label- und Konfigurationsattributen an. Diese Daten werden von Hyvä-Templates für die Produkt-Varianten-Auswahl benötigt.
4.3 Store-Switcher Erweiterung¶
Rewrite Hyva/Theme/ViewModel/StoreSwitcher — Erweitert den Standard-Hyvä-Store-Switcher, um aktive Stores über alle Websites hinweg zurückzugeben (nicht nur die aktive Website). Ermöglicht einen vollständigen Multi-Website-Store-Switcher.
5 Frontend-JavaScript-Hilfsfunktionen¶
Das Modul injiziert über view/frontend/layout/hyva_default.xml folgende JavaScript-Hilfsfunktionen in alle Hyvä-Frontend-Seiten:
| Funktion | Beschreibung |
|---|---|
lazyLoadJS |
Lädt JavaScript-Dateien beim Scrollen in den Viewport nach (Intersection Observer) |
lazyLoadCss |
Lädt CSS-Dateien verzögert nach |
evaluateScript |
Führt JavaScript aus einem String aus (CSP-konform) |
evaluateScriptsByElement |
Führt alle Script-Tags in einem DOM-Element aus |
updateContentFromTemplates |
Aktualisiert Seiteninhalt mit Alpine.js-kompatiblen AJAX-Antworten |
| Alpine Collapse Plugin | Smooth-Collapse-Animation für Alpine.js x-show-Direktiven |
| Popper.js Tooltip | Tooltip-Positionierungsbibliothek für Hyvä-Komponenten |
Diese Hilfsfunktionen stehen global in allen Hyvä-Templates zur Verfügung.
Lizenz¶
Proprietär — CopeX GmbH. Eine Lizenz pro produktiver Magento-Instanz. Test- und Entwicklungsumgebungen benötigen keine zusätzliche Lizenz.