Datum: 30. Mai 2015 (angesichts der sich ändernden Art von Magento 2).
Magento 2 führte ein Plugin-Konzept ein , das über ein Interceptor-Pattern implementiert wurde .
Was in den Dokumenten nicht klar ist: Welche Klassen und Objekte in Magento können abgefangen werden? Das heißt, Sie konfigurieren ein Plugin mit XML, das wie folgt aussieht
<config>
<type name="{ObservedType}">
<plugin name="{pluginName}" type="{PluginClassName}" sortOrder="1" disabled="true"/>
</type>
</config>
Es ist jedoch nicht klar, welche Klassen als gültig sind ObservedType
. Dieser ältere Wiki-Artikel bietet einige Hinweise, wenn es heißt
Bitte beachten Sie, dass die Plug-in-Funktion nicht für Klassen gilt, die ohne Abhängigkeitsinjektion erstellt wurden, dh mit dem Operator new direkt erstellt wurden. -Final-Methoden, -Final-Klassen
Ist ein Objekt, das über die Abhängigkeitsinjektion erstellt wurde, zum Abfangen verfügbar? Muss das ObservedType
der Typ-Hinweis sein, der in der a- __construct
Methode bereitgestellt wird, oder kann es (sollte es sein?) Etwas anderes sein?
Ich versuche vor allem, mich mit dem zu beschäftigen, was mit einem Magento 2-Interceptor möglich und nicht möglich ist, bevor ich sie verwende.