22

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

我正在尝试以这种方式获取产品类型。但它不适合我

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

请指导我...

4

8 回答 8

58

尝试以下代码以获取当前加载的产品 ID:

$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();
于 2013-05-02T06:49:59.610 回答
6
<?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

于 2013-08-04T05:31:05.157 回答
3

you can get all product information from following code

$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>";
于 2013-05-02T06:55:00.593 回答
2

项目集合。

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

产品 :

$product->getTypeId();
$product->getId()
于 2014-11-22T05:56:56.163 回答
1

你也可以试试这个。。

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

当您无权访问 $this 时,您可以使用 Magento 注册表:

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

于 2013-12-27T13:37:59.317 回答
0

IN MAGENTO 在数据库中查询并获取类似的结果。不使用产品平面表的产品 id、产品名称和制造商使用 eav 目录产品实体及其属性表产品 ID 产品名称制造商 1 | 产品 | 诺基亚 2 | 产品B | 三星

于 2013-10-03T13:56:12.250 回答
0

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

上面的代码对我不起作用。它的抛出异常;

这对我有用,可以获取产品详细信息。

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

所以用于产品类型。

$productType = $_product->getTypeId();

于 2016-05-31T13:12:31.260 回答
0

这对我有用-

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

利用getTypeId()

于 2017-07-12T16:10:46.797 回答