Magento产品的制造商


Manufacturer of a product Magento

我从magento开始,遇到了一个非常奇怪的问题,我有一个根类别,两个子类别,每个类别都有子类别和产品,我想要根类别下的两个子类别中的每个类别的制造商列表。

我首先将根类别id设为3。请看下面的代码。。

$root=3;
    $rootcategories=Mage::getModel('catalog/category')->getCategories($root,1,false,true,false);    
foreach($rootcategories as $c=>$Cat){
    $product = Mage::getResourceModel('catalog/product_collection')
                           ->addCategoryFilter($Cat);
foreach($product as $pro){
    $pId=$pr['entity_id'];
    $_product=Mage::getModel('catalog/product')->load($pId);
    $manufacturers[$c][]=$_product->getResource()->getAttribute('manufacturer')->getFrontend()->getValue($_product);
}
}
echo '<pre>'; 
print_r($manufacturers);
die;

我应该从这个代码中得到制造商的列表,但我得到了每个类别中每个产品的"否"。

您没有在foreach循环中使用$pro变量:)

foreach($product as $pro) {
   echo $pro->getManufacturers;
}

试试这个。随时随地工作。

$manufacturer = Mage::getModel('catalog/product')->load($_product->getId())->getAttributeText('manufacturer');

为什么不简单地进行

$_product->getData('manufacturer');

尝试

$root=3;
$categories = Mage::getModel('catalog/category')->load($root)->getChildrenCategories();
foreach($categories AS $cat)
{
$productCollection =  Mage::getResourceModel('catalog/product_collection')->addCategoryFilter($cat);
foreach($productCollection AS $product)
{
echo $product->getAttributeText('manufacturer').'<br/>';
}
}

类似的东西。希望这能有所帮助。