2012-08-10 109 views
0

鉴于以下几个基本的代码(这是从一个CMS页面调用):获得“分组产品”的网址,因为单个产品ID

<?php 
    $id = $this->getProductId(); 
    $product = Mage::getModel('catalog/product')->load($id); 

    $price=$product->getFinalPrice(); 
    $name=$product->getName(); 
    $url=$product->getUrlPath(); 
?> 

<p><a href="<?php echo $url; ?>" title="<?php echo $name; ?>" ><?php echo $name; ?> - &pound;<?php echo $this->helper('tax')->getPrice($product, $product->getFinalPrice(), true) ?></a></p> 

如果产品是一个产品组的一部分,不可见的个别,我需要检索组网址,而不是产品网址。

有没有人有任何建议如何做到这一点?

---编辑---

蒂姆已经正确地指出,一个产品可以同时在多个组,所以我修改我的问题:

有谁知道的方式测试产品是否属于一个组,如果是这样,是否有可能检索这些组的URL?

+0

单件产品可以同时为零件或分组产品和独立产品。所以我会说没办法。 – 2012-08-10 13:59:30

回答

0
$products = Mage::getModel('catalog/product') 
    ->getCollection() 
    ->addAttributeToFilter('type_id', array('eq' => 'grouped')); 
foreach ($products as $product) { 
    $associatedProducts = $product->getTypeInstance(true)->getAssociatedProducts($product); 
    // Do something with $associatedProducts