Recently I upgraded a Magento Store to 1.4.2.0 and noticed empty Product Attributes showing up on the product pages when they weren’t there before.
I took a quick look into it and created a workaround loop to stop these empty attribute appearing.
Open template/catalog/product/view/attribute.phtml
find:
[sourcecode language=”php”]
<?php foreach ($_additional as $_data): ?>
<tr>
<th class="label"><?php echo $this->htmlEscape($this->__($_data[‘label’])) ?></th>
<td class="data"><?php echo $_helper->productAttribute($_product, $_data[‘value’], $_data[‘code’]) ?></td>
</tr>
<?php endforeach; ?>
[/sourcecode]
replace with:
[sourcecode language=”php”]
<?php foreach ($_additional as $_data): ?>
<?php $_attribute = $_product->getResource()->getAttribute($_data[‘code’]);
if (!is_null($_product->getData($_attribute->getAttributeCode())) && ((string)$_attribute->getFrontend()->getValue($_product) != ”)) { ?>
<tr>
<th class="label"><?php echo $this->htmlEscape($this->__($_data[‘label’])) ?></th>
<td class="data"><?php echo $_helper->productAttribute($_product, $_data[‘value’], $_data[‘code’]) ?></td>
</tr>
<?php } ?>
<?php endforeach; ?>
[/sourcecode]