In vielen Shops wird mit Produkt-Attributen gearbeitet und teilweise auch mit sehr vielen solcher Attribute.
Nicht immer werden aber alle Attribute eines Produktes auch mit einem Wert hinterlegt und so taucht dann in der Zusatzinformation bei der Artikelbeschreibung jeweils ein “Nein” auf. Das ist natürlich nicht schön und auch unnötig, da dies leicht abgestellt werden kann.
Hierfür wird die Datei attributes.phtml aus dem Ordner app/design/frontend/[base oder default]/default/template/catalog/product/view in den eigenen Templateordner kopiert.
Anschließend werden folgende Zeilen angepasst:
<tbody> <?php foreach ($_additional as $_data): ?> <tr> <th ><?php echo $this->escapeHtml($this->__($_data['label'])) ?></th> <td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td> </tr> <?php endforeach; ?> </tbody>
Diese werden ersetzt durch
<tbody> <?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> <?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; ?> <!--<?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; ?>--> </tbody>
Anschließend speichern und hochladen. Das sollte es dann schon gewesen sein.
Genutzt in Magento Versionen 1.7 – 1.9 Kommentare? Ergänzungen? Hinweise? Gerne!