Magento Blog: Anleitungen und Praxiswissen | Seite 359 | mironsoft
Magento Blog
-
17.01.2025
Redis Geo-Commands speichern Koordinaten nicht in einer eigenen Datenstruktur, sondern in einem gewoehnlichen Sorted Set mit einem speziell kodierten Score. Wer diesen Mechanismus versteht, kann Umkreissuchen, Store-Locator-Funktionen und Distanzberechnungen mit wenigen Befehlen umsetzen, ganz ohne zusaetzliche Geodatenbank.
-
17.01.2025
Wer Deprecation-Warnungen mit Error-Reporting-Tricks stummschaltet, verschiebt echte Migrationsarbeit nur auf einen späteren, teureren Zeitpunkt. Ein eigener Error-Handler mit strukturiertem Logging, statische Analyse mit PHPStan und Rector sowie ein priorisierter Backlog verwandeln Deprecations von ignoriertem Rauschen in einen messbaren, planbaren Migrationsprozess.
-
17.01.2025
Wer ein Headless CMS mit GraphQL anbindet, trifft eine Architektur-Entscheidung, die über Jahre hinweg Content-Modeling, Caching und Team-Workflows bestimmt. Strapi, Contentful und Magento GraphQL setzen dieselbe Spezifikation völlig unterschiedlich um, mit Konsequenzen für Query-Komplexität, Autorisierung und die Frage, wo Content endet und Commerce-Daten beginnen.
-
17.01.2025
Eine Lightbox-Galerie ohne jQuery, ohne externe Libraries: Alpine.js verwaltet den Zustand, Pfeiltasten navigieren, Escape schließt, Touch-Swipe funktioniert auf Mobile und Lazy Loading hält den Initial-Load schlank.
-
17.01.2025
Der Adaptive Hash Index beobachtet Zugriffsmuster auf B-Tree-Seiten im Buffer Pool und baut daraus automatisch eine In-Memory-Hash-Struktur, die Equality-Lookups beschleunigen soll. Das funktioniert gut, solange die Zugriffsmuster tatsächlich wiederholt und gleichförmig sind, kann bei starker Schreiblast aber selbst zum Flaschenhals werden.
-
17.01.2025
Unoptimierte Bilder sind auf den meisten Websites die größte einzelne Ursache für schlechte Core Web Vitals. Das Nuxt Image Modul automatisiert Formatkonvertierung, responsive Größen und Lazy Loading, sodass eine einzige Komponente aus einem rohen Upload das passende Bild für jedes Gerät und jede Netzwerkverbindung generiert, ohne manuelle Bildbearbeitung im Vorfeld.
-
17.01.2025
env.php gehört nicht ins Repository und nicht in den Build-Artefakt. Wer das missachtet, baut ein Release-Modell, das beim ersten Umgebungswechsel bricht. Dieser Beitrag erklärt, wie app/etc, Shared-Verzeichnisse und config.php korrekt im Symlink-Release-Modell mit GitLab CI/CD zusammenspielen.
-
16.01.2025
Alpine.js-Komponenten wirken oft interaktiv und modern, bleiben für Screenreader und Tastaturnutzer jedoch häufig unbrauchbar, wenn ARIA-Attribute nicht reaktiv mit dem Komponentenzustand verbunden sind. Dieser Artikel zeigt praxisnah, wie man x-bind:aria-expanded, x-on:keydown und sauberes Fokus-Management korrekt einsetzt, und baut ein vollständig barrierefreies Akkordeon sowie ein Dropdown-Menü Schritt für Schritt von Grund auf, inklusive Tastaturnavigation und Screenreader-Unterstützung.
-
16.01.2025
Dateien die im Container als root erstellt wurden und auf dem Host nicht bearbeitbar sind, Volume-Mounts die Lese- oder Schreibzugriff verweigern, Prozesse die mit UID 0 laufen obwohl das nicht nötig wäre – Docker Dateirechte sind eines der häufigsten Probleme in der täglichen Entwicklung und im Produktionsbetrieb. UID/GID-Mapping, fixuid und rootless Docker lösen diese Konflikte systematisch.
-
16.01.2025
Caching in Symfony bedeutet mehr als $cache->get(). Wer wirklich Performance gewinnen will, kombiniert mehrere Cache-Ebenen: APCu für ultraschnelle In-Process-Daten, Redis für shared State zwischen PHP-Prozessen, HTTP-Cache für komplette Response-Wiederverwendung — und hält alle drei Ebenen mit Tag-basierter Invalidierung konsistent.