批量从自定义选项magento中删除所需的参数

问题描述 投票:0回答:3

我的数据库中有大约10000个产品,它们都有自定义选项,并且都设置为必需。

我需要取消设置。 请建议我如何动态地执行此操作。 我不想一个接一个地从magento管理员这样做,因为这将需要永远

谢谢

database magento field product unset
3个回答
1
投票

如果您想为所有产品的所有自定义选项重置required字段,这是一种快速而肮脏的方法。

所有自定义选项都存储在表catalog_product_option中。 决定是否需要该选项的列名是is_require

因此运行此查询应该可以解决问题。

UPDATE `catalog_product_option` SET `is_require` = 0 WHERE 1

如果有的话,添加表前缀。


0
投票

您可以使用csv导入产品更新这些产品所需的参数。我想,你已经通过csv导入了产品。只需将该SKU和自定义字段选项复制到新的csv文件中即可。

再次导入那些产品。它会根据需要更新自定义选项必填字段


0
投票

我只是在扩展马吕斯的回答。我需要这样做,但只是为了我偶然要求的一堆自定义选项。我认为它可能有助于其他人做出类似的错误估计! :-D

UPDATE catalog_product_option o
JOIN catalog_product_option_title t ON t.option_id=o.option_id 
SET o.is_require = 0
WHERE t.title = 'Additional Comments'
AND o.is_require = 1

幸运的是,我导入的选项都具有相同的标题,所以我能够以这种方式过滤它。

如果您使用SKU作为自定义选项,则可以进一步简化查询,因为它不需要连接。

UPDATE catalog_product_option o
SET o.is_require = 0
WHERE o.sku = 'SKU1234'
AND o.is_require = 1

^没有测试,但看着应该工作的表的结构。

© www.soinside.com 2019 - 2024. All rights reserved.