2013-05-02 21 views
18

Tôi đang tạo cửa hàng Magento. Tôi là người mới bắt đầu trong Magento. Tôi muốn nhận được sản phẩm id và loại đầu vào sản phẩm trong tập tin phtml của tôi là điều này có thể? xin vui lòng hướng dẫn tôi ..Nhận id sản phẩm và loại sản phẩm trong Magento?

Tôi đang cố gắng theo cách này để có được loại sản phẩm. id sản phẩm nhưng nó không làm việc cho tôi

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

hãy hướng dẫn cho tôi ...

Trả lời

51

Hãy thử mã dưới đây để có được hiện nạp:

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

Khi bạn không có quyền truy cập đến $ này , bạn có thể sử dụng đăng ký Magento:

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

Còn đối với loại sản phẩm tôi nghĩ

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

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

Hi @liyakat. Tôi đã nhận được nó id sản phẩm của tôi. tôi cũng cần có loại sản phẩm. xin vui lòng giúp mei đang cố gắng $ _product-> getResource() -> getTypeId() theo cách này nhưng tôi đã nhận lỗi nghiêm trọng: Gọi đến một hàm thành viên getCategoryIds() trên một đối tượng không –

+0

Đây là demo demo http: // demo của tôi. osiztechnologies.com/printing/index.php/folders/9x14-5-folders –

+0

@Nathan Srivi, tôi đã cập nhật câu trả lời của tôi xin kiểm tra – liyakat

2

bạn có thể nhận được tất cả thông tin sản phẩm từ mã sau

$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

Tôi muốn làm cách nào tôi có thể nhận được tên hoặc id loại đầu vào. hướng dẫn tôi –

+0

Đã bỏ phiếu - không trả lời câu hỏi. – siliconrockstar

+0

Điều này đã trả lời câu hỏi tôi có khi tôi đến đây để upvoted! –

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; ?> 

Vì vậy trên. Nó hoạt động! Magento 1.6.1, đặt trong view.phtml

0

Trong truy vấn MAGENTO trong cơ sở dữ liệu và tìm nạp kết quả như thế nào. id sản phẩm, tên sản phẩm và manufracturer khi sử dụng sản phẩm bàn phẳng sử dụng eav catalog_product_entity và bảng thuộc tính product_id product_name manufacturer 1 | PRODUCTA | NOKIA 2 | PRODUCTB | SAMSUNG

1

Bạn cũng có thể thử này ..

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

Khi bạn không có quyền truy cập đến $ này bạn có thể sử dụng Magento registry:

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

2

mục bộ sưu tập.

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

sản phẩm:

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

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

trên mã không làm việc cho tôi. ngoại lệ ném của nó;

Tính năng này đang làm việc cho tôi để biết chi tiết sản phẩm.

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

Vì vậy, sử dụng cho loại sản phẩm.

$productType = $_product->getTypeId();

0

này làm việc cho ME

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

Sử dụng getTypeId()