Gibt es jemanden, der mir ein Beispiel für die Verwendung extension_attributes
in Magento2 geben kann?
Gibt es jemanden, der mir ein Beispiel für die Verwendung extension_attributes
in Magento2 geben kann?
Antworten:
Angenommen, wir erstellen ein Bestell-Lieferdatum. Wenn der Kunde den Versand auswählt, kann er ein Lieferdatum auswählen. So können Sie eine Erweiterungsattribut für erstellen \ Magento \ Kasse \ Api \ Data \ ShippingInformationInterface in folgenden Weise
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Api/etc/extension_attributes.xsd">
<extension_attributes for="Magento\Checkout\Api\Data\ShippingInformationInterface">
<attribute code="delivery_date" type="string"/>
</extension_attributes>
</config>
Sie können jetzt auf diesen Wert zugreifen, wenn Sie \ Magento \ Checkout \ Api \ Data \ ShippingInformationInterface als di verwenden.
In diesem Fall verwendet Magento \ Checkout \ Model \ ShippingInformationManagement diese Klasse \ Magento \ Checkout \ Api \ Data \ ShippingInformationInterface als Parameter für die Methode saveAddressInformation. So können Sie folgendermaßen zugreifen:
$extAttributes = $addressInformation->getExtensionAttributes();
$deliveryDate = $extAttributes->getDeliveryDate();
Für mehr Details (Magento 2 Official Documentation)
Hier ist ein Beispiel:
Wählen Sie den Wert für die Erweiterungsattribute
[Aktualisieren]
Sie können extension_attributes mit der setExtensionAttributes- Methode festlegen . Die folgende Klasse ist ein Beispiel: Klicken Sie hier
extension_attributes
zu funktionieren? Muss ich beispielsweise immer ein Plugin für afterLoad
Kunden hinzufügen, wenn ich ein benutzerdefiniertes Attribut für Kunden haben möchte? Scheint mir ein bisschen überfordert zu sein ...