Technologie & Pakete Paket

Compatibility Layer: eine Codebasis für mehrere PrestaShop-Versionen

Gemeinsame Compatibility Traits gleichen PrestaShop-Versionsunterschiede aus: AJAX-Antworten, Template-Pfade, Hook-Namen und Controller-Signaturen.

Ein Satz Helfer. Mehrere PrestaShop-Generationen.

PrestaShop ändert sich von Version zu Version erheblich. Die Signaturen von Controller-Methoden änderten sich zwischen 1.7 und 8.x. Template-Pfade wurden verschoben. AJAX-Antwortformate unterscheiden sich. Hook-Namen wurden umbenannt. Das Markup des Admin-Bereichs wurde für die Symfony-Integration überarbeitet.

Die meisten Modulentwickler bewältigen das mit über den Code verstreuten if (version_compare)-Prüfungen. Wir lösen es mit einer Kompatibilitätsschicht, die die Unterschiede abfängt, sodass Module gegen eine stabile API entwickeln.

Was sie normalisiert

  • AJAX-Antworten: standardisiertes JSON-Antwortformat unabhängig von der PS-Version
  • Template-Pfade: gemeinsame Helfer, um den Pfad eines Modul-Templates aufzulösen
  • Übersetzung: ein trans()-Ersatz für 1.6, wo es weder auf Module noch auf Controller oder ObjectModel existiert
  • Front-Injektionspunkte: liefert die Hooks, die es in der laufenden Version gibt, und sagt klar, wenn eine Version keine anbietet
  • Preisformatierung: ein Aufruf, der den Wegfall von Tools::displayPrice() in PS 9 übersteht

Warum das wichtig ist

Diese Helfer bündeln die Versionsprüfungen, die sonst über jedes Modul verstreut wären. Welche PrestaShop-Versionen ein Modul unterstützt, steht beim jeweiligen Modul und wird dort geprüft.

← Zurück zu Unser Technologie-Stack

Lade ...
Nach oben