J'ai le code suivant:
$_productCollection = Mage::getResourceModel('catalog/product_collection') ->addAttributeToSelect(array('name', 'price', 'small_image', 'status'), 'inner') ->addCategoryFilter(Mage::getModel('catalog/category')->load($catid)); $_helper = $this->helper('catalog/output'); foreach ($_productCollection as $_product): echo $_product->getProductUrl(); endforeach
3 Réponses :
Tout d'abord, dans les modèles et les blocs, n'importe quelle méthode avec donc si ce tableau avait une clé nommée N'oubliez pas que certaines méthodes auront des méthodes Deuxièmement, vous pouvez utiliser des fonctions de réflexion PHP (ou l'API de la classe de réflexion PHP plus compliquée) afin de voir quel classe un objet est, puis obtenir une liste de méthodes sur cette classe p> Tout d'abord, utilisez get_class pour obtenir le nom d'un objet d'un objet. P > puis, passez ce get_class_methods pour obtenir une liste de toutes les méthodes appelables sur un Objet P> Obtenir code> ou un
ou un ensemble code> peut être strong> être une méthode magique qui tire de l'objet ' Code> _Data code> Array. Vous pouvez voir toutes les données d'un objet comme celle-ci
quelque_data code>, vous pouvez appeler une méthode nommée
getomedata p>
obtiennent code> et
défini code>, vérifiez donc toujours la définition de la classe. p>
$class_name = get_class($object);
$methods = get_class_methods($class_name);
echo "Methods for class $class_name \n<br />\n";
foreach($methods as $method)
{
var_dump($method);
}
+1 pour apprendre à utiliser une IDE appropriée (je préfère Netbeans), cela vous aidera à comprendre la conception OO de Magento infiniment plus rapide que le piratage dans un éditeur de texte "bête", en particulier b> lorsque combiné avec Live Débogage avec Xdebug.
+1 Pour l'IDE également, la hiérarchie d'objets profonds de Magento rend la navigation héritage de la classe via une sortie imprimée une tâche ingrate. Si vous êtes sur un projet Magento, vous êtes vraiment sur Zend_Debug :: Dump ($ objet-> getdata ()); est également Votre ami .
Vous pouvez simplement imprimer_r (get_class_mesthods ($ objet))
Voici une direction simple pour trouver les fichiers de classe: -
Le code ci-dessus signifie que nous appelons la classe de collecte de produits. Le fichier de classe peut être trouvé dans: - p> App \ Code \ CORE \ MAGE \ Catalogue \ Modèle \ Resource \ ev \ mysql4 \ product \ Collection.php P>
blockQuote> in Collection.php Vous trouverez la classe suivante: - p> Donc, votre fonction requise peut être dans Si ce n'est pas là, il peut être dans la classe des parents, c'est-à-dire la classe parent, c'est-à-dire 2. Modèle fort> p> De même, P>
mage_catalog_model_resource_av_mysql4_product_collection code> classer. P>
Mage_Catalog_mySQL4_Collection_abstract CODE> P>
$_helper = $this->helper('catalog/output');
Je suis un novice total, mais j'ai utilisé les informations sur cette page pour obtenir toutes les méthodes disponibles pour moi pour un certain objet et les envoyer à un journal.
Par exemple la catégorie_collection: p> < Pré> xxx pré> p>