在magento 2中添加自定义图像属性类别
问题描述:
我已经尝试了下面的代码在类别中添加缩略图图像。在magento 2中添加自定义图像属性类别
当我在自定义字段中上传图片时,我得到下面的错误。
错误
Attention
The file was not uploaded.
error: "The file was not uploaded." errorcode: 666
category_form.xml
<field name="thumbnail_image">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">string</item>
<item name="source" xsi:type="string">category</item>
<item name="label" xsi:type="string" translate="true">Category Image</item>
<item name="visible" xsi:type="boolean">true</item>
<item name="formElement" xsi:type="string">fileUploader</item>
<item name="elementTmpl" xsi:type="string">ui/form/element/uploader/uploader</item>
<item name="previewTmpl" xsi:type="string">Magento_Catalog/image-preview</item>
<item name="required" xsi:type="boolean">false</item>
<item name="sortOrder" xsi:type="number">40</item>
<item name="uploaderConfig" xsi:type="array">
<item name="url" xsi:type="url" path="catalog/category_image/upload"/>
</item>
<item name="label" xsi:type="string" translate="true">Thumbnail Image</item>
</item>
</argument>
</field>
InstallData.php
$eavSetup->addAttribute('catalog_category', 'thumbnail_image', array(
'input' => 'image',
'type' => 'varchar',
'backend' => 'catalog/category_attribute_backend_image',
'group' => 'General',
'label' => 'Thumbnail Image',
'visible' => 1,
'required' => 0,
'user_defined' => 1,
'frontend_input' =>'',
'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL,
'visible_on_front' => 1,
));
di.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Acl/etc/di.xsd">
<type name="Namespace\Module\Controller\Adminhtml\Category\Image">
<arguments>
<argument name="imageUploader" xsi:type="object">Magento\Catalog\CategoryImageUpload</argument>
</arguments>
</type>
</config>
答
您的解决方案是列在这里:https://github.com/magento/magento2/issues/5438][1]
有后
magento
的2.1.x release.so您类别属性类型 “图像” 的一些硬编码的码无法创建自定义图像属性。解决方法是:您需要安装GitHub上列出的补丁,您可以找到它:[https://github.com/magento/magento2/pull/5970/commits/706845648f3a377e6f40ce0487f961dcfb2a721f][2] here。
我认为目前没有任何补丁可用于此,因此您需要手动替换核心文件。
检查图像大小。也许它太大了。 – Marius
debug fileUploader,我假设它期望$ _FILES数组中的属性,但在你的情况下,它可能是$ _FILES [category] [property],在我的情况下它是$ _FILES [product] [property]。我在这里找到了技巧 - https://community.magento.com/t5/Programming-Questions/Product-custom-attribute-file-upload/td-p/29460 –