2016-11-24 68 views
1

我正在嘗試使用產品ID獲取只有產品名稱如何在magento中獲得產品名稱?

我曾嘗試以下:

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

它加載整個資源對象,比我們能得到使用$product->getName()的名字,但我只需要一個名字,所以我們可以減少額外開銷。

$product = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('name')->addAttributeToFilter('entity_id', PRODUCT_ID)->load(); 

它也加載資源對象。

是否有任何最簡單的方式獲取產品名稱(例如'測試產品')而不加載資源對象?

回答

1

使用getAttributeRawValue()有了這個,你可以得到你的產品的屬性值:

$attribute_value = Mage::getResourceModel('catalog/product')->getAttributeRawValue(PRODUCT_ID, 'attribute_code'); 
0

我們需要通過店內價值,以及獲得的產品直接從資源模型屬性。 您可以通過使用此代碼獲取店鋪ID: - Mage::app()->getStore().

所以最終的查詢將是: -

$attribute_value = Mage::getResourceModel('catalog/product')->getAttributeRawValue(PRODUCT_ID,'attribute_code',Mage::app()->getStore()); 
+0

雖然這個代碼片斷可以解決的問題,包括解釋確實有助於提高您的文章質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。 –

+0

感謝您的建議。 –

1

試試這個,希望這對你的工作。

試試這個:

$product = Mage::registry('current_product'); then 
$product->getName(); 
$product->getId(); 

你可以試試這個產品:

$id = $this->getRequest()->getParam('id'); 
$current_product=Mage::getModel('catalog/product')->load($id); 
相關問題