Magento Blog: Anleitungen und Praxiswissen | Seite 304 | mironsoft
Magento Blog
-
28.03.2025
Wer in einem Composable mehrere watch, watchEffect und computed anlegt, muss beim Aufräumen jeden einzeln stoppen. Ein Effect Scope bündelt alle diese Effekte in einer Gruppe und beendet sie mit einem einzigen stop() Aufruf, ganz gleich ob innerhalb oder außerhalb einer Komponente.
-
28.03.2025
Wer GraphQL-Filter in Magento naiv über rohes SQL oder direkte Modell-Abfragen löst, baut technische Schulden auf. Der korrekte Weg führt über den SearchCriteriaBuilder — mit typsicheren Argumenten im Schema, sauberer Delegation im Resolver und testbarer Filterlogik im Service Contract.
-
28.03.2025
Eine falsch konfigurierte Elasticsearch oder OpenSearch Installation bremst jede Kategorieseite und jede Facettensuche in Magento spürbar aus. Dieser Artikel zeigt, wie Index-Mapping, Shard-Größen, JVM-Heap und Query-Muster die tatsächliche Antwortzeit bestimmen, wie man mit der Explain API und Cluster-Health-Checks Engpässe findet, und wie man teure Wildcard- und Fuzzy-Queries in der Layered Navigation vermeidet.
-
28.03.2025
Sprachdateien laufen in jedem wachsenden Projekt irgendwann auseinander: Ein neuer Text wird in der Ausgangssprache ergänzt, die Übersetzung in drei weiteren Sprachdateien wird vergessen, und niemand bemerkt es, bis ein Kunde einen englischen Platzhaltertext in der deutschen Oberfläche meldet. Dieser Artikel zeigt, wie Claude beim systematischen Finden fehlender Schlüssel, bei kontextgerechten statt wörtlichen Übersetzungen und bei der korrekten Behandlung von Pluralisierungsregeln unterstützt.
-
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.
-
28.03.2025
Ein einfaches GROUP BY über eine Datumsspalte reicht bei Zeitreihen-Aggregation selten aus, denn Tage ohne Ereignisse tauchen im Ergebnis einfach nicht auf. Dieser Artikel zeigt, wie Zeitfenster mit DATE_TRUNC gebildet werden, wie Kalendertabellen und generate_series fehlende Perioden zuverlässig auffüllen und wie sich Vergleichszeiträume wie Vorjahr oder Vorwoche direkt in SQL berechnen lassen.
-
28.03.2025
Redis eignet sich mit dem LPUSH/BRPOP-Muster gut als einfache Task-Queue, und Streams liefern mit Consumer Groups sogar Zustellgarantien und Nachrichten-Historie. Doch beide Ansaetze stossen an Grenzen bei komplexem Routing, garantierter Reihenfolge ueber viele Consumer hinweg oder sehr hohem Nachrichtendurchsatz, wo dedizierte Systeme wie RabbitMQ oder Kafka die robustere Wahl sind.
-
28.03.2025
Eigene PHP-Attribute ersetzen Docblock-Annotationen durch eine vom Compiler geparste, typsichere Syntax: Eine mit #[Attribute] markierte Klasse definiert die Struktur, Attribute::TARGET-Flags schränken das erlaubte Ziel ein, und eine ReflectionClass liest die Daten zur Laufzeit aus, ganz ohne fragilen String-Parser für Kommentare.
-
28.03.2025
Allgemeine Elasticsearch-Sizing-Faustregeln gehen selten von einem Magento-Katalog mit Dutzenden Attributen und mehreren Store Views pro Sprache aus, wodurch die Dokumentanzahl und die Indexgröße schneller wachsen als bei einem einfachen Content-Index. Wer Kapazität für einen großen Magento-Katalog plant, braucht deshalb Kennzahlen, die diese Besonderheiten direkt berücksichtigen.
-
28.03.2025
Laufende Cron-Jobs und Queue Consumer während eines Deployments sind eine unterschätzte Fehlerquelle. Ein Consumer, der im alten Release-Code läuft während der Symlink auf das neue Release wechselt, kann zu Datenkonsistenz-Problemen führen. Dieser Artikel erklärt, wie Cron und Consumer im GitLab-Deployment-Prozess zuverlässig kontrolliert werden.