Magento将组价格和分层价格从一种产品复制到另一种产品
我已成功从产品中读取组价格和层价格数组 但我无法使用其他产品的阵列设置组价格和层价格属性 这是读取组价格和层价格数组的方式Magento将组价格和分层价格从一种产品复制到另一种产品,magento,Magento,我已成功从产品中读取组价格和层价格数组 但我无法使用其他产品的阵列设置组价格和层价格属性 这是读取组价格和层价格数组的方式 $groupPrices = $simpleProduct->getData('group_price'); if (is_null($groupPrices)) { $attribute = $simpleProduct->getResource()->getAttribute('group_price'); if ($attribute
$groupPrices = $simpleProduct->getData('group_price');
if (is_null($groupPrices)) {
$attribute = $simpleProduct->getResource()->getAttribute('group_price');
if ($attribute) {
$attribute->getBackend()->afterLoad($simpleProduct);
$groupPrices = $simpleProduct->getData('group_price');
}
}
我尝试了下面的方法将它们设置为其他产品
$product->setGroupPrice($groupPrices);
$product->setData('tier_price', $tierPrices);
$product->setData('tier_price', $tierPrices)->getResource()->saveAttribute($product, 'tier_price');
他们都没有工作。救命啊 在查看tier price数组后,我发现有一个price_id密钥,当您将tier pricing数据从一个产品复制到另一个产品时,显然不应该使用该密钥并将其复制到另一个产品,因此您只需切片数组,移除该密钥-值对即可
(
[0] => Array
(
[price_id] => 1285 // REMOVE THIS KEY-VALUE PAIR
[website_id] => 0
[all_groups] => 0
[cust_group] => 1
[price] => 7.0600
[price_qty] => 2.0000
[website_price] => 7.0600
)
[1] => Array
(
[price_id] => 1286 // REMOVE THIS KEY-VALUE PAIR
[website_id] => 0
[all_groups] => 0
[cust_group] => 1
[price] => 6.9100
[price_qty] => 5.0000
[website_price] => 6.9100
)
)