Hyvä: Anleitungen und Praxiswissen | Seite 8 | mironsoft Blog
Hyvä
-
11.05.2025
Langsame Bucket-Aggregationen auf der Kategorieseite kosten in Hyvä-Shops oft mehr Zeit als das eigentliche Rendering. Wer Facet-Anzahl, GraphQL-Query und Caching gezielt aufeinander abstimmt, bringt die Layered Navigation wieder auf ein Tempo, das zur restlichen Frontend-Performance passt.
-
02.05.2025
Ein geteilter Link ohne Bild, mit abgeschnittenem Titel oder falscher Beschreibung wirkt unprofessionell und wird seltener geklickt. Open-Graph-Tags steuern exakt, wie eine URL bei Facebook, LinkedIn, WhatsApp und weiteren Plattformen als Vorschau erscheint. Wer og:image, og:title und og:description korrekt setzt und die Bildgrößen pro Plattform beachtet, verwandelt jeden geteilten Link in eine kleine Werbeanzeige statt in eine verpasste Chance.
-
05.04.2025
Ein Magento 2 Store Switcher wirkt im Frontend wie ein simples Dropdown, verbirgt dahinter aber eine Redirect-Logik, die entscheidet, ob ein Kunde beim Sprachwechsel auf derselben Produktseite landet oder unerwartet zur Startseite springt. Wer den Store Switcher in Hyvä mit Alpine.js sauber anpasst, erhält Seitenkontext, respektiert Cookie-Präferenzen und vermeidet Frust bei internationalen Besuchern.
-
04.04.2025
Die Darstellung der Versandmethoden im Checkout entscheidet oft über Kaufabbruch oder Abschluss. Im Hyvä-Checkout ersetzt eine schlanke Alpine.js-Komponente, die ihre Daten per GraphQL availableShippingMethods query lädt, die Knockout shipping-rates-Komponente aus Luma. Wer diese Komponente anpassen will, arbeitet mit shipping-methods.phtml, ViewModels und eigenen Carrier-Modellen statt mit uiComponents, Observables und RequireJS-Modulen, und bekommt dafür Kartenansichten, Liefertermine, Freigrenzen-Hinweise und Click-and-Collect als reaktive, wartbare Bausteine.
-
01.04.2025
Magento bringt mit Magento_CustomerBalance ein vollwertiges Store-Credit-System mit, das im Luma-Theme über klassische Blöcke ausgegeben wird. Im Hyvä-Theme fehlt diese Ausgabe meist komplett und muss neu gedacht werden: als ViewModel, als GraphQL-Query und als Alpine-Komponente im Checkout. Dieser Artikel zeigt den kompletten Weg von der Saldo-Anzeige bis zur Einlösung.
-
28.03.2025
Ein Chat-Widget oder eine eingebettete Karte will fast immer eigene Domains kontaktieren, eigene Inline-Skripte ausführen und eigene Cookies setzen, genau das, was eine strikte Content Security Policy standardmaessig verhindert. Wer Drittanbieter-Skripte richtig in csp_whitelist.xml eintraegt und mit einem Alpine-Wrapper kapselt, bekommt beides: funktionierende Widgets und eine intakte CSP.
-
27.03.2025
Magentos alte jQuery-validation.js passt weder zu einem Theme ohne jQuery noch zu einer strikten Content Security Policy. Alpine-basierte Live-Validierung schließt diese Luecke, ersetzt aber niemals die serverseitige Prüfung, denn jede clientseitige Regel lässt sich mit deaktiviertem JavaScript oder einem direkten POST-Request umgehen.
-
15.03.2025
Ein Carousel für verwandte Produkte ist schnell mit einer schweren JS-Bibliothek eingebunden und genauso schnell zum Performance-Problem geworden. Wer Hyvä-typisch bleibt, baut das Carousel mit Alpine und einer minimalen Swiper-Integration, lädt Bilder konsequent lazy und stellt sich ehrlich die Frage, ob ein statisches Grid nicht sogar die bessere Wahl wäre.
-
14.03.2025
Eine einzelne, vorausgewählte oder mit der Datenschutzerklärung kombinierte AGB-Checkbox im Checkout ist ein rechtliches Risiko, das im Hyvä-Theme durch fehlende Serverprüfung zusätzlich verschärft wird. Dieser Beitrag zeigt, wie dieses Pflichtfeld über Magentos checkout_agreements-Mechanismus, eine erweiterte Alpine.js-Komponente für mehrere Pflichtfelder und ein serverseitiges PHP-Plugin so implementiert wird, dass Kunden aktiv zustimmen müssen und eine Bestellung ohne echte Bestätigung technisch unmöglich bleibt.
-
12.03.2025
Ein Playwright-Test, der nur gegen CSS-Klassen oder feste Timeouts prüft, testet im Hyvä-Theme oft am eigentlichen Problem vorbei, weil ein erheblicher Teil des Komponentenzustands nicht im sichtbaren DOM, sondern im reaktiven Alpine-State hinter x-data lebt. Dieser Artikel zeigt, wie sich der Alpine-State direkt über die öffentliche Alpine-API abfragen lässt, wie ein Test zuverlässig auf die Initialisierung wartet statt auf feste Wartezeiten zu setzen, und welche Fallstricke in CSP-restriktiven Hyvä-Setups typischerweise zu Flaky Tests führen.