magento - fatal error : Uncaught SoapFault exception: [103] Attribute "include_in_menu" is required

标签 magento

“ fatal error :未捕获 SoapFault 异常:[103] 需要属性“include_in_menu”。”当我使用 Magento API 创建类别时抛出。

在 Magento API 中,它说我需要一个像这样的数组,

         array(
            'name'=>'Newopenerp',
            'is_active'=>1,
            'include_in_menu'=>2,
            'available_sort_by'=>'position',
            'default_sort_by'=>'position'
           )

当我使用 Magento 1.5.1 在本地主机中运行我的脚本时,一切看起来都很好。在 Magento 1.5.0 的服务器中,抛出了这个异常。我想知道这是否是由于版本更改引起的。

我尽力调试这个,一天后什么也没得到。我确定这是 Magento API 的问题,也许 Magento 1.5.0 中的“include_in_menu”有另一种数据类型。

我真的很想知道这里发生了什么!

PS: 我在http://sourceforge.net/projects/jtlmage/forums/forum/1009350/topic/4028894获得了一些有用的信息。但不是英文,所以我不明白它的意思。希望对大家有所帮助!

提前致谢。

最佳答案

请转到此路径“app/code/core/Mage/Catalog/etc/”,然后打开此文件“wsdl.xml”。然后转到 #187 行,您将找到 Magento v1.5.0.1 的以下代码块:-

<complexType name="catalogCategoryEntityCreate">
    <all>
        <element name="name" type="xsd:string" minOccurs="0" />
        <element name="is_active" type="xsd:int" minOccurs="0" />
        <element name="position" type="xsd:int" minOccurs="0" />
        <element name="available_sort_by" type="typens:ArrayOfString" minOccurs="0" />
        <element name="custom_design" type="xsd:string" minOccurs="0" />
        <element name="custom_design_apply" type="xsd:int" minOccurs="0" />
        <element name="custom_design_from" type="xsd:string" minOccurs="0" />
        <element name="custom_design_to" type="xsd:string" minOccurs="0" />
        <element name="custom_layout_update" type="xsd:string" minOccurs="0" />
        <element name="default_sort_by" type="xsd:string" minOccurs="0" />
        <element name="description" type="xsd:string" minOccurs="0" />
        <element name="display_mode" type="xsd:string" minOccurs="0" />
        <element name="is_anchor" type="xsd:int" minOccurs="0" />
        <element name="landing_page" type="xsd:int" minOccurs="0" />
        <element name="meta_description" type="xsd:string" minOccurs="0" />
        <element name="meta_keywords" type="xsd:string" minOccurs="0" />
        <element name="meta_title" type="xsd:string" minOccurs="0" />
        <element name="page_layout" type="xsd:string" minOccurs="0" />
        <element name="url_key" type="xsd:string" minOccurs="0" />
    </all>
</complexType>

在这里,如果您关注所有元素,您将能够知道所有属性/元素都是必需的。

至于你的问题,你是对的,在 Magento v1.5.1.0 中,元素“include_in_menu”存在于相同的属性中。但是,Magento v1.5.0.1 在“wsdl.xml”文件中不存在任何此类元素,您需要从数组元素列表中删除此元素。

此外,我想让您知道,我不建议您在“complexType”数据中添加此元素,因为这意味着您在核心中打洞,并且会仅当您对 Magento 核心进行任何升级时才会妨碍您的 Magento。

希望有帮助。

关于magento - fatal error : Uncaught SoapFault exception: [103] Attribute "include_in_menu" is required,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6964921/

相关文章:

magento - 向 Magento 产品添加图像属性

css - 搜索目录中的产品重叠

php - 如何使用 Magento API 获取产品评论和评级信息

rest - 如何在 Magento 中使用 REST API 获取产品信息

magento - 如何以编程方式更新客户商店信用

php - Magento权限-我无法通过Magento后端添加任何内容

php - 如何在 magento 中获取当前类别及其子类别?

javascript - 如何通过 Javascript 获取 Magento baseUrl 然后在 jquery.hello-lightbox.min 中使用它?

magento - 向 Magento 添加新的引用 block

ajax - Jquery ajaxSubmit 也执行常规表单提交