For a grouped product, I would like to display a link to the simple products it is composed of. For example, if I have a grouped product called Dining Set composed of plates, knives, forks, etc. I'd like each of the subproducts to have a link to that subproduct (click plates goes to the Simple Product for plates)
<?php foreach ($_associatedProducts as $_item): ?> <tr> <td><?php echo $this->htmlEscape($_item->getName()) ?></td> <td class="a-right"> <?php echo $this->getPriceHtml($_item, true) ?> </td> <?php if ($_product->isSaleable()): ?> <td class="a-center"> <?php if ($_item->isSaleable()) : ?> <a href="<?php $_item->getProductUrl() ?>">View</a> <?php else: ?> <p class="availability"><span class="out-of-stock"><?php echo $this->__('Out of stock.') ?></span></p> <?php endif; ?> </td> <?php endif; ?> </tr> <?php endforeach; ?>
This is a code snippet from the grouped.phtml file in
In particular the line that has
this does not work, and I don't know the code needed to get the url for this associated product item. If anyone could help here it would be much appreciated.
Also, where on earth can I find the method's available (and how they're used) for Products or Categories or
$_item and the like?
Easy to find all methods and functions. Always trace back to the Core
/app/code/core/Mage/Catalog/Model/Product.php or any of the other files in that Folder.
Your code is perfect. Just use
Just a few notes on getting the available methods / data:
First, to get all methods actually coded into the classes, you can get all the available methods with:
$array = get_class_methods($_item); //yields an array of the methods in the class var_dump($array); // to see the methods
To get all data-related methods, first find out the data members in the class. This works with most objects in Magento:
$data = $_item->getData(); // $key => $value array
Then you can get any piece of data you want two ways:
// assuming I want 'my_data' $data = $_item->getMyData(); $data = $_item->getData('my_data');