我从admin为产品引入了一个属性,并为特定产品分配了一个值以获取它的值。但是它的价值并没有显示在前端,我尝试了所有推荐的方法,但都无法获得它。然后我继续使用print_r($_product->debug())进行调试。这个调试向我展示了以下行为:
Array
(
[store_id] => 1
[entity_id] => 339
[_cache_instance_products] => Array
(
[0 (Mage_Catalog_Model_Product)] => Array
.
.
.
[419 (Mage_Catalog_Model_Product)] => Array
(
[entity_id] => 1210
[entity_type_id] => 4
[prd_help_tab] => This is testing help for "Mobster US e-liquid"
)
)
)属性名称为" prd_help_tab“,它的值在那里,但它位于_cache_instance_products => 419 (Mage_Catalog_Model_Product) => prd_help_tab内部
我的问题是如何在模板文件中获取此值?因为值只在上面提到的层次结构中。
经过进一步的调查,我了解到这个问题出现在“可配置产品”中。
发布于 2013-09-26 04:08:55
你应该能够
$_product->getPrdHelpTab();尝试在收集到产品集合时将其添加到产品集合中
$_productCollection->addAttributeToSelect("prd_help_tab");确保admin中的属性包含在平面表中,方法是将其设置为"Used in Product Listing“,然后重新编制索引

发布于 2013-09-26 04:12:39
首先:确保admin config中的属性在目录列表和产品视图布局中设置为可见。
简单: Magento有层次结构来调用名称的值,但在页面上必须有加载Magento库和正确产品的产品帮助器(通过您的调试,您拥有它) $_product = $this->getProduct();
调用你的值应该是这样的:$_product->getPrdHelpTab();
或者,如果不是工作电话:
<?php
$_helper = $this->helper('catalog/output');
$_product = $this->getProduct()
?>
<?php if($_additional = $this->getAdditionalData()): ?>
<?php foreach ($_additional as $_data): ?>
<?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?>
<?php endforeach;?>
<script type="text/javascript">decorateTable('product-attribute-specs-table')</script>
<?php endif; ?>发布于 2013-10-22 19:12:56
<?php echo $_product->getAttributeText('custom attribute'); ?></span> https://stackoverflow.com/questions/19014124
复制相似问题