Sie können auch WSDL-Definitionen im lokalen Ordner haben. Sie müssen lediglich ein benutzerdefiniertes Modul erstellen. In Ihrem benutzerdefinierten Modul können Sie die Dateien hinzufügen api.xml
, wsdl.xml
und wsi.xml
innerhalb des etc
Ordners.
Ihre wsdl.xml
Datei sollte beim Erstellen der eigentlichen WSDL berücksichtigt werden. Magento führt alle wsdl.xml
Dateien aus allen Modulen zusammen, die eines haben (dasselbe gilt für api.xml
und wsi.xml
). Diese Dateien werden zusammengeführt, sodass Sie nicht die vollständige XML-Datei aus dem Mage_Catalog
Modell benötigen . Sie können nur die Teile hinzufügen, die Sie benötigen. Stellen Sie jedoch sicher, dass Sie den gleichen Pfad beibehalten.
Hier ist ein einfaches Beispiel. In wsdl.xml
aus Mage_Catalog
gibt es dieses Stück Code:
<definitions...>
<types>
<schema ...>
<complexType name="catalogProductEntity">
<all>
<element name="product_id" type="xsd:string"/>
<element name="sku" type="xsd:string"/>
<element name="name" type="xsd:string"/>
<element name="set" type="xsd:string"/>
<element name="type" type="xsd:string"/>
<element name="category_ids" type="typens:ArrayOfString"/>
<element name="website_ids" type="typens:ArrayOfString"/>
</all>
</complexType>
</schema>
</types>
</definitions>
Wenn Sie diesem Typ ein weiteres Feld hinzufügen möchten, müssen Sie in Ihrer Datei wsdl.xml von Ihrem benutzerdefinierten Modul aus Folgendes tun:
<definitions...>
<types>
<schema ...>
<complexType name="catalogProductEntity">
<all>
<element name="custom_attribute" type="xsd:string"/>
</all>
</complexType>
</schema>
</types>
</definitions>
(Fügen Sie die Attribute für die Tag-Definitionen und das Schema hinzu, die ich durch '...' ersetzt habe.)