我试图将一些(但不是全部)价格从一个商店更新到另一个商店 . 例如,一条衬衫应该是第二家商店价格的1.2倍
我想仅根据实体标签更新一些项目组,但我正在努力从magento中提取所有数据(在下面的代码中确定我能得到什么) . 我缺少的是价格和实体标签 . 我知道他们住在哪些表但不确定正确的magento语法来访问它们,例如Mage :: getModel('catalog / product')我试图使用Magento友好代码实现这一点,而不是查询
使用企业1.11,而不是在现阶段购买插件,任何建议都非常感谢
$mageFilename = 'app/Mage.php';
require_once $mageFilename;
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID); #important
$product_id = '8782';
$collection = Mage::getModel('catalog/product')
->load($product_id);
echo "Collection: " . $collection->getName();
echo "<br>";
echo "Attribute Set: " . $collection->getAttributeSetId() . " SKU: " . $collection->getSku();
echo "<br>";
echo "Entity ID: " . $collection->getEntity_id() . " Product Type (Attribute Label): " . $collection->getProducttype();
1 回答
只是说明一下:
在您展示的示例中,$ collection对象实际上不是“集合” . 它是一个“目录/产品”对象的实例 .
要修改一个目录/产品对象的价格,您将看到这样的事情:
如果你想在一堆产品上执行此操作,那么应用一些属性过滤器(归结为将WHERE子句添加到最终生成的SQL) . (magento集合查询语法的Here's one summary . )
我不确定你所说的“实体标签”是什么意思 . 这是您附加到产品的自定义属性吗?
一般示例,将此价格变化应用于具有特定SKU的所有产品:
在哪里,如果您要跨越商店进行价格计算,“calcNewPrice”可能看起来像这样:
希望这可以帮助 .