Magento Blog: Anleitungen und Praxiswissen | Seite 73 | mironsoft
Magento Blog
-
08.02.2026
Catalog Price Rules wirken auf den ersten Blick wie Cart Price Rules, nur ohne Gutscheincode, funktionieren intern aber vollkommen anders. Während Cart Price Rules ihre Bedingungen bei jeder Warenkorb-Berechnung neu auswerten, verlässt sich Magento bei Catalog Price Rules bewusst auf eine vorberechnete Indextabelle, damit die Preisanzeige im Katalog nicht bei jedem Seitenaufruf komplexe Regel-Logik durchlaufen muss. Dieser Artikel geht in die Tiefe: wie der catalogrule_rule-Indexer arbeitet, warum viele aktive Regeln bei großem Katalog zum Performance-Problem werden können, und mit welchen gezielten Reindex-Strategien sich das in Grenzen halten lässt.
-
08.02.2026
Ein einziger versehentlicher Commit mit Datenbank-Zugangsdaten oder dem Crypt Key aus app/etc/env.php kann ein komplettes Magento-Projekt kompromittieren, selbst wenn das Repository später wieder privat gesetzt wird. Dieser Artikel zeigt, welche Dateien niemals in Git landen dürfen, wie eine saubere gitignore Baseline aussieht und wie Secrets Manager sowie Pre Commit Scanning das zuverlässig verhindern.
-
08.02.2026
strict_types schaltet die automatische, stille Typkonvertierung von PHP für die aktuelle Datei ab: Ein String an einen int-Parameter, ein Float an einen int-Parameter oder ein falscher Rückgabetyp lösen sofort einen TypeError aus, statt unbemerkt in einen anderen Typ konvertiert zu werden, was Bugs Jahre früher sichtbar macht, direkt am Aufruf statt irgendwo tiefer im Code.
-
08.02.2026
Ein Datei-Explorer im Browser muss eine beliebig tief verschachtelte Ordnerstruktur darstellen, ohne dass die Einrückung optisch aus dem Ruder läuft. Dieses Muster zeigt, wie sich ein rekursiver Baum mit Tailwind CSS und Alpine.js aufbauen lässt: von der Einrückungslogik über animierte Auf-/Zuklapp-Icons und dateityp-abhängige Symbole bis zur Hervorhebung von Auswahl und Drop-Zielen beim Verschieben per Drag-and-Drop.
-
08.02.2026
Manchmal steht ein Wrapper-Element im Weg: Es unterbricht die Grid-Linie, verhindert direkte Flex-Kind-Teilnahme oder erzwingt eine zusätzliche Layout-Ebene. display: contents macht das Element für den Layout-Kontext unsichtbar — seine Kinder treten direkt ein. Was einfach klingt, hat jedoch ernste Accessibility-Fallstricke, die jeder kennen muss, der dieses Feature produktiv einsetzt.
-
07.02.2026
Ein TypeScript Transformer greift direkt in den Compiler-Durchlauf ein, noch bevor JavaScript entsteht, und verändert den abstrakten Syntaxbaum programmatisch. Das ermöglicht Dinge, die weder ein Linter noch ein einfaches Build-Skript leisten kann, etwa das automatische Entfernen von Debug-Code oder das Einfügen von Metadaten basierend auf tatsächlichen Typinformationen.
-
07.02.2026
Wer zum ersten Mal ein dense_vector-Feld anlegt, wählt die Vektor-Dimension meist danach, was das gewählte Embedding-Modell nun einmal liefert, ohne die tatsächlichen Speicher- und Performance-Kosten zu hinterfragen. Bei einem kleinen Testkatalog fällt das kaum auf, bei mehreren Millionen Produkten in mehreren Sprachen summieren sich die Kosten pro Vektor jedoch schnell zu einem spürbaren Infrastrukturproblem. Zwischen der Wahl der Dimension, der Quantisierungsstrategie und den HNSW-Graphparametern bestehen enge Wechselwirkungen, die über Speicherbedarf, Indexierungsgeschwindigkeit und Suchqualität gemeinsam entscheiden. Dieser Artikel zeigt, welche Trade-offs bei der Dimensionswahl tatsächlich relevant sind, wie int8- und int4-Quantisierung Speicher spart, ohne die Suchqualität unbrauchbar zu machen, und wie sich die Indexierungsgeschwindigkeit bei großen Produktkatalogen praktisch verbessern lässt.
-
07.02.2026
MFTF automatisiert genau die Klasse von Fehlern, die Unit-Tests systematisch übersehen: kaputte Checkout-Flows, fehlerhafte JavaScript-Interaktionen und Admin-Formulare, die nach einem Update plötzlich nicht mehr speichern. Wer MFTF sauber aufsetzt, bekommt einen Browser-gestützten Absicherungslayer, der echte Klickpfade im Storefront und Backend automatisch nachstellt und Regressionen findet, bevor Kunden sie finden.
-
07.02.2026
Dieselbe Abfrage kann auf zwei Datenbanken mit identischem Schema, aber unterschiedlicher Datenverteilung, zwei vollkommen verschiedene Ausführungspläne erhalten, ohne dass sich am SQL-Text ein einziges Zeichen ändert. Verantwortlich dafür ist der Cost-Based Optimizer, der aus vielen theoretisch möglichen Zugriffsstrategien anhand von Statistiken, Kardinalitätsschätzungen und einem Kostenmodell diejenige auswählt, die er für die günstigste hält. Wer versteht, wie dieser Entscheidungsprozess intern abläuft, kann Optimizer-Fehlentscheidungen gezielt diagnostizieren statt sie nur zu vermuten.
-
07.02.2026
Der GitLab Runner ist der Motor jeder Pipeline – er führt die Jobs aus, die in .gitlab-ci.yml definiert sind. Welcher Runner-Typ für Magento-Builds und Deployments geeignet ist, hängt von Isolation, Performance, Sicherheitsanforderungen und verfügbarer Infrastruktur ab.