gpt4 book ai didi

Magento 使用 updateAttributes 设置产品属性 "Use Default Value"

转载 作者:行者123 更新时间:2023-12-03 06:18:22 27 4
gpt4 key购买 nike

我有一个多商店设置,并且我正在为特定商店设置产品属性以使用“使用默认值”选项 - (即使用商店 View 中的值),如下所示:

$_product = Mage::getModel('catalog/product');
$_product->load($productId);
$_product->setStoreId($storeId)->setName(false)->save();

这将 $productId 的 storeId 的 Name 属性设置为使用“使用默认值”

鉴于我有很多属性需要设置,我正在尝试使用:

Mage::getSingleton('catalog/product_action')->updateAttributes(array($productId), array('name' => false), $storeId);

但这并没有将“使用默认值”复选框设置为 true。

如何使用 ->updateAttributes 设置存储值以使用“使用默认值”选项?

屏幕截图:

enter image description here

最佳答案

“使用默认值”标志未存储在数据库中的任何位置。

Magento 核心在保存产品时使用该标志来执行此操作:

   /**
* Check "Use Default Value" checkboxes values
*/
if ($useDefaults = $this->getRequest()->getPost('use_default')) {
foreach ($useDefaults as $attributeCode) {
$product->setData($attributeCode, false);
}
}

在做其他事情之前。

我会查看 Mage_Adminhtml_Catalog_ProductController (app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php) 并了解 Magento 核心是如何做到这一点的。

特别是saveAction()_initProductSave()

我希望这能为您指明正确的方向。

关于Magento 使用 updateAttributes 设置产品属性 "Use Default Value",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9302279/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com