【发布时间】:2014-07-30 06:18:55
【问题描述】:
在将产品上传到数据库时,我们做错了。 SKU 编号以描述结尾,描述以 SKU 结尾。
大约有 1.000 种产品,因此无法手动执行此操作。另外,这是一个老错误,直到现在才被注意到,所以现在很多产品都有订单历史记录。
有没有办法切换这些字段?
【问题讨论】:
标签: mysql magento e-commerce bulk
在将产品上传到数据库时,我们做错了。 SKU 编号以描述结尾,描述以 SKU 结尾。
大约有 1.000 种产品,因此无法手动执行此操作。另外,这是一个老错误,直到现在才被注意到,所以现在很多产品都有订单历史记录。
有没有办法切换这些字段?
【问题讨论】:
标签: mysql magento e-commerce bulk
尝试找出存在此问题的产品 ID。
如果他们所有人都处于这种情况,那就更容易了。
这个想法是首先获得所有需要修改的产品
如果您可以手动获取它们,请执行以下操作:
$ids = array(1,3,5,6,7,8, ...);
$products = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('description')->addAttributeToFilter('entity_id', $ids);
如果所有产品都需要修改,请这样做:
$products = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('description');
在所有 id 运行此脚本后:
foreach ($products as $product) {
Mage::getSingleton('catalog/product_action')->updateAttributes(
array($product->getId()), //id to update
array( //values to update
'sku' => $product->getDescription(),
'description' => $product->getSku()
),
0 //store id
);
}
【讨论】: