web-dev-qa-db-fra.com

Obtenir l'identifiant et le type de produit dans magento?

Je crée un magasin magento. Je suis débutant en magento. Je souhaite obtenir l'ID et le type d'entrée du produit dans mon fichier phtml, est-ce possible? Guidez-moi s'il-vous-plaît..

J'essaie de cette façon d'obtenir le type de produit. mais ça ne marche pas pour moi

$product=Mage::getModel('catalog/product')->load($product_id);
$productType=$product->getTypeID(); 

Guidez-moi s'il-vous-plaît...

21
Nathan Srivi

Essayez le code ci-dessous pour obtenir l'id du produit actuellement chargé:

$product_id = $this->getProduct()->getId();

Lorsque vous n’avez pas accès à $ this, vous pouvez utiliser le registre Magento:

$product_id = Mage::registry('current_product')->getId();

Aussi pour le type de produit je pense 

$product = Mage::getModel('catalog/product')->load($product_id); 

$productType = $product->getTypeId();
56
liyakat
<?php if( $_product->getTypeId() == 'simple' ): ?>
//your code for simple products only
<?php endif; ?>

<?php if( $_product->getTypeId() == 'grouped' ): ?>
//your code for grouped products only
<?php endif; ?>

Et ainsi de suite ... ça marche! Magento 1.6.1, place dans le view.phtml

6
Bakk László

vous pouvez obtenir toutes les informations sur le produit à partir du code suivant 

$product_id=6//Suppose
$_product=Mage::getModel('catalog/product')->load($product_id);


    $product_data["id"]=$_product->getId();
    $product_data["name"]=$_product->getName();
    $product_data["short_description"]=$_product->getShortDescription();
    $product_data["description"]=$_product->getDescription();
    $product_data["price"]=$_product->getPrice();
    $product_data["special price"]=$_product->getFinalPrice();
    $product_data["image"]=$_product->getThumbnailUrl();
    $product_data["model"]=$_product->getSku();
    $product_data["color"]=$_product->getAttributeText('color'); //get cusom attribute value


    $storeId = Mage::app()->getStore()->getId();
    $summaryData = Mage::getModel('review/review_summary')->setStoreId($storeId)  ->load($_product->getId());
    $product_data["rating"]=($summaryData['rating_summary']*5)/100;

    $product_data["shipping"]=Mage::getStoreConfig('carriers/flatrate/price');

    if($_product->isSalable() ==1)
        $product_data["in_stock"]=1;
    else
        $product_data["in_stock"]=0;


    echo "<pre>";
    print_r($product_data);
    //echo "</pre>";
2

Collection d'objets.  

$_item->product_type;
$_item->getId()

Produit:  

$product->getTypeId();
$product->getId()
2

Vous pouvez aussi essayer ça ..

$ this-> getProduct () -> getId ();

Lorsque vous n’avez pas accès à $ this, vous pouvez utiliser le registre Magento:

$ cpid = Mage :: registry ('current_product') -> getId ();

1
Kesar Sisodiya

IN MAGENTO interrogez la base de données et récupérez le résultat comme. ID du produit, nom du produit et fabricant sans utiliser la table plate du produit utilisez le eav catalog_product_entity et sa table attributaire product_id product_name nom du fabricant 1 | PRODUCTA | NOKIA 2 | PRODUITB | SAMSUNG

0
JAIMIN PATEL

Cela a fonctionné pour moi

if(Mage::registry('current_product')->getTypeId() == 'simple' ) {

Utilisez getTypeId()

0
Potamus