Magento ->getSku() 或 getData('sku') 返回空字符串

2022-08-30 22:33:52

我有Magento 1.3.2,我有奇怪的问题:

当我在 中时,我尝试通过使用获取 SKU,或者我得到空字符串。 确实有效。但是,当我从其他页面执行此操作时,它效果很好。list.phtmlgetSku()getData('sku')getName()

我把它放了,没有显示SKU。var_dump

什么原因导致这种情况?


答案 1

我很惊讶没有人给你最简单,最合适的答案:

转到您的管理员、目录>>属性>>管理属性。然后编辑“sku”属性。将“商品信息中使用的”“否”更改为“是”。然后,您可以从 产品对象 访问它list.phtml->getSku()


答案 2

另一个选项是使用已有产品的 ID 在 list.phtml 中重新加载产品对象。代码读起来有点像:

$sku = Mage::getModel('catalog/product')->load($_product->getId())->getSku();

请注意,$_product是您已经在集合中获得的内容,请注意getSku区分大小写(所有Magento属性getter/setters也是如此)。

@Prattski的解决方案是可取的,因为您并不想在加载/操作对象时搞砸,但听起来好像您的收藏有点混乱。SKU 是基表中存在的核心字段之一,因此不加载是不寻常的。catalog_product_entity


推荐