Question

Pour un produit groupé, je souhaite afficher un lien vers les produits simples qui le composent.Par exemple, si j'ai un produit groupé appelé Dining Set composé d'assiettes, de couteaux, de fourchettes, etc.J'aimerais que chacun des sous-produits ait un lien vers ce sous-produit (cliquez sur les plaques pour accéder au produit simple pour les plaques)

<?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; ?>

Il s'agit d'un extrait de code du fichier grouped.phtml dans

app/design/frontend/blank/default/template/catalog/product/view/type/grouped.phtml

En particulier la ligne qui a $_item->getProductUrl(), cela ne fonctionne pas, et je ne connais pas le code nécessaire pour obtenir l'URL de cet élément de produit associé.Si quelqu'un pouvait aider ici, ce serait très apprécié.

De plus, où puis-je trouver les méthodes disponibles (et comment elles sont utilisées) pour les produits ou les catégories ou $_item etc?

Était-ce utile?

La solution

Facile à trouver toutes les méthodes et fonctions. trace toujours à la /app/code/core/Mage/Catalog/Model/Product.php Core ou l'un des autres fichiers de ce dossier.

Votre code est parfait. Il suffit d'utiliser

$_item->getUrlPath() ;

au lieu de productURL.

Autres conseils

Juste quelques notes sur l'obtention des méthodes / données disponibles:

Tout d'abord, pour obtenir toutes les méthodes réellement codées dans les classes, vous pouvez obtenir toutes les méthodes disponibles avec:

$array = get_class_methods($_item); //yields an array of the methods in the class
var_dump($array); // to see the methods

Pour obtenir toutes les méthodes liées aux données, d'abord trouver les données membres de la classe. Cela fonctionne avec la plupart des objets dans Magento:

$data = $_item->getData(); // $key => $value array

Ensuite, vous pouvez obtenir tout morceau de données que vous souhaitez deux façons:

// assuming I want 'my_data'
$data = $_item->getMyData();
$data = $_item->getData('my_data');
<?php echo $this->htmlEscape($_item->getProductUrl()) ?>

ou voici l'intégralité A HREF :

<a href="<?php echo $this->htmlEscape($_item->getProductUrl()) ?>">
            <?php echo $this->htmlEscape($_item->getName()) ?>
</a>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top