vei*_*lig 22 php magento magento-1.4
我知道在Magento 1.4.2.0中我会得到父ID
list( $parentId ) = Mage::getModel('catalog/product_type_configurable')
->getParentIdsByChild( $product->getId() );
Run Code Online (Sandbox Code Playgroud)
我的问题是:如果我不知道父母是什么,我怎么知道使用"目录/ product_type_ 配置 " VS"目录/ product_type_ 组合 "的模式,以获得ID?
Kus*_*Kus 34
您可以同时打电话给两个并提供后备,因为它应该是一个或另一个:
if($product->getTypeId() == "simple"){
$parentIds = Mage::getModel('catalog/product_type_grouped')->getParentIdsByChild($product->getId());
if(!$parentIds)
$parentIds = Mage::getModel('catalog/product_type_configurable')->getParentIdsByChild($product->getId());
if(isset($parentIds[0])){
$parent = Mage::getModel('catalog/product')->load($parentIds[0]);
// do stuff here
}
}
Run Code Online (Sandbox Code Playgroud)
小智 9
你可以使用:
$product->getTypeInstance();
Run Code Online (Sandbox Code Playgroud)
这将返回产品的类型对象
然后你可以执行你的:
->getParentIdsByChild()
Run Code Online (Sandbox Code Playgroud)
最后给出:
$product->getTypeInstance()->getParentIdsByChild($child->getId());
Run Code Online (Sandbox Code Playgroud)
小智 7
这是magento 1.7.2的另一种解决方案
$parentIds = Mage::getSingleton('catalog/product_type_configurable')->getParentIdsByChild($mageProduct->getId());
Run Code Online (Sandbox Code Playgroud)