Bạn cũng có thể có định nghĩa wsdl trong thư mục cục bộ. Những gì bạn cần làm là tạo ra một mô-đun tùy chỉnh. Trong mô-đun tùy chỉnh của bạn, bạn có thể thêm các tập tin api.xml, wsdl.xmlvà wsi.xmlbên trong etcthư mục.
wsdl.xmlTập tin của bạn nên được xem xét khi xây dựng wsdl thực tế. Magento hợp nhất tất cả wsdl.xmlcác tệp từ tất cả các mô-đun có một (cùng đi api.xmlvà wsi.xml). Các tệp này được hợp nhất, vì vậy bạn không cần tệp xml đầy đủ từ Mage_Catalogmô hình. Bạn chỉ có thể thêm các phần bạn cần, chỉ cần đảm bảo rằng bạn giữ cùng một đường dẫn.
Đây là một ví dụ đơn giản. Trong wsdl.xmltừ Mage_Catalogcó đoạn mã này:
<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>
Và bạn muốn thêm một trường khác vào loại này, tất cả những gì bạn phải làm trong tệp wsdl.xml từ mô-đun tùy chỉnh của mình là:
<definitions...>
<types>
<schema ...>
<complexType name="catalogProductEntity">
<all>
<element name="custom_attribute" type="xsd:string"/>
</all>
</complexType>
</schema>
</types>
</definitions>
(thêm các thuộc tính cho các định nghĩa và lược đồ thẻ mà tôi đã thay thế bằng '...').