在magento中获取产品ID和产品类型?

问题描述:

我正在创建magento商店。我是magento的初学者。我想在我的phtml文件中获得产品ID和产品输入类型,这可能吗?请指导我..在magento中获取产品ID和产品类型?

我想通过这种方式来获得产品类型。但它不是为我工作

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

请指引我...

尝试下面的代码来获取当前负载的产品ID:

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

当你没有获得$此,你可以使用Magento的注册表:

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

也为产品类型,我认为

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

$productType = $product->getTypeId(); 
+0

@liyakat嗨。我知道了我的产品ID。我还需要获得产品类型。请帮助我试图$ _product-> getResource() - > getTypeId()这种方式,但我得到了致命错误:调用一个非对象的成员函数getCategoryIds() – 2013-05-02 07:00:49

+0

这是我的演示网址http:// demo。 osiztechnologies.com/printing/index.php/folders/9x14-5-folders – 2013-05-02 07:04:15

+0

@Nathan Srivi,我已更新我的答案请检查 – liyakat 2013-05-02 07:13:30

你可以因此,对下面的代码

$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>"; 
+0

我想如何获得输入类型的名称或ID。指导我 – 2013-05-02 07:11:46

+0

Downvoted - 不回答问题。 – siliconrockstar 2015-08-31 05:31:22

+0

这回答了我当我来这里如此有争议时的问题! – 2017-07-24 19:41:58

<?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,放在view.phtml中

IN MAGENTO在数据库中查询并获取结果。 产品编号,产品名称和制造商 未使用产品平板表 使用eav catalog_product_entity及其属性表 product_id product_name制造商 1 | PRODUCTA |诺基亚 2 | PRODUCTB |三星

您也可以尝试这个..

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

当你没有获得$这一点,你可以使用Magento的注册表:

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

项目集合。

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

产品:

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

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

上面的代码不是为我工作。其抛出异常;

这是为我工作获取产品详细信息。

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

所以使用的产品类型。

$productType = $_product->getTypeId();

这个工作对我 -

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

使用getTypeId()