Получить идентификатор продукта и тип продукта в magento?


Я создаю магазин magento. Я новичок в magento. Я хочу получить идентификатор продукта и тип ввода продукта в моем файле phtml, возможно ли это? пожалуйста, направь меня..

Я пытаюсь таким образом получить тип продукта. но это не работает для меня

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

Пожалуйста, направь меня...

Author: Nathan Srivi, 2013-05-02

8 answers

Попробуйте использовать приведенный ниже код, чтобы получить идентификатор загруженного в данный момент продукта:

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

Если у вас нет доступа к $this, вы можете использовать реестр Magento:

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

Также для типа продукта, я думаю,

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

$productType = $product->getTypeId();
 54
Author: liyakat, 2015-10-26 04:40:13
<?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; ?>

И так далее. Это работает! Magento 1.6.1, поместите в представление.phtml

 6
Author: Bakk László, 2013-08-04 05:31:05

Коллекция предметов.

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

Продукт :

$product->getTypeId();
$product->getId()
 2
Author: Saurabh Chandra Patel, 2014-11-22 05:56:56

Вы можете получить всю информацию о продукте из следующего кода

$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
Author: Pragnesh Rupapara, 2016-09-13 07:03:29

Вы также можете попробовать это..

$это->getProduct()->getId();

Если у вас нет доступа к $this, вы можете использовать реестр Magento:

$cpid=Mage::реестр('текущий продукт')->getId();

 1
Author: Kesar Sisodiya, 2013-12-27 13:37:59

В MAGENTO запросите в базе данных и получите результат, подобный. идентификатор продукта, название продукта и производитель без использования плоской таблицы продукта используйте eav catalog_product_entity и его таблицу атрибутов product_id имя_продукта производитель 1 | ПРОДУКТ | NOKIA 2| ПРОДУКТ | SAMSUNG

 0
Author: JAIMIN PATEL, 2013-10-03 13:56:12

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

Приведенный выше код не работает для меня. его исключение для броска;

Это работает для меня, чтобы получить подробную информацию о продукте.

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

Поэтому используйте для для типа продукта.

$productType = $_product->getTypeId();

 0
Author: sudhir, 2016-05-31 13:24:36

Это сработало для меня -

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

Использовать getTypeId()

 0
Author: Potamus, 2017-07-12 16:10:46