Magento 版本 1.6.1.0。我正在尝试编写一些代码来动态更新可配置产品选项的价格。我的最终目标是编写一个模块,该模块将根据可配置产品的子产品价格更新可配置产品选项的价格。附加代码从目录中提取所有可配置产品,并将它们与产品选项和价格以及子产品的名称和价格一起显示。我计划计算出可配置产品和每个子产品之间的价格差异,并更新价格适当的选项以匹配。到目前为止,我一直无法弄清楚如何更新产品选项的价格。
短版:我只需要一种方法来更新可配置产品选项的价格。你知道怎么做吗?
<?php
require_once './app/Mage.php';
Mage::app();
Mage::app()->setCurrentStore(1);
// load in configurable products
$productConfig = Mage::getResourceModel('catalog/product_collection')->addAttributeToFilter('type_id', 'configurable');
foreach ($productConfig as $_product)
{
// load the configurable product
$_product = Mage::getModel('catalog/product')->load($_product->getId());
echo 'Product Name';
var_dump ($_product->getName());
var_dump ($_product->getPrice());
// Collect options applicable to the configurable product
$productAttributeOptions = $_product->getTypeInstance(true)->getConfigurableAttributesAsArray($_product);
$attributeOptions = array();
foreach ($productAttributeOptions as $productAttribute)
{
var_dump($productAttribute['label']);
foreach ($productAttribute['values'] as $attribute)
{
var_dump($attribute);
}
}
// loop through the child products
echo 'Child products';
$col = Mage::getModel('catalog/product_type_configurable')->setProduct($_product)->getUsedProductCollection()->addAttributeToSelect('*')->addFilterByRequiredOptions();
foreach($col as $simple_product)
{
var_dump($simple_product->getName());
var_dump($simple_product->getPrice());
}
}
echo '~fin';
?>
谢谢!