我试图创建一个基本的表与表格数据被从magento商店拉。我写了下面的代码,但…因为我只懂非常基本的php,我很好奇什么是更干净,更有效的方式来写这个:
<table id="prodStructureTable">
<?php
$ProdMBrandName = $_product->getAttributeText('manufacturer');
$ProdModel = $_product->getModel();
$ProdSku = $_product->getSku();
$ProdMpn = $_product->getMpn();
$ProdUpc = $_product->getUpc();
if (isset($ProdMBrandName))
{
echo '<tr> <td>'. $_product->getResource()->getAttribute('manufacturer')->getFrontendLabel() . ':</td><td> '. $ProdMBrandName . '</td></tr>';
} else {
echo "";
}
if (isset($ProdModel))
{
echo '<tr> <td>'. $_product->getResource()->getAttribute('model')->getFrontendLabel() . ':</td><td> '. $ProdModel . '</td></tr>';
} else {
echo "";
}
if (isset($ProdSku))
{
echo '<tr> <td>'. $_product->getResource()->getAttribute('sku')->getFrontendLabel() . ':</td><td> '. $ProdSku . '</td></tr>';
} else {
echo "";
}
if (isset($ProdMpn))
{
echo '<tr> <td>'. $_product->getResource()->getAttribute('mpn')->getFrontendLabel() . ':</td><td> '. $ProdMpn . '</td></tr>';
} else {
echo "";
}
if (isset($ProdUpc))
{
echo '<tr> <td>'. $_product->getResource()->getAttribute('upc')->getFrontendLabel() . ':</td><td> '. $ProdUpc . '</td></tr>';
} else {
echo "";
}
?>
可以这样写:
<table id="prodStructureTable">
<?php
$table_rows = array(
'manufacturer' => $_product->getAttributeText('manufacturer'),
'model' => $_product->getModel(),
'sku' => $_product->getSku(),
'mpn' => $_product->getMpn(),
'upc' => $_product->getUpc(),
);
foreach ($table_rows as $attribute => $value)
if (isset($value))
echo '<tr> <td>'. $_product->getResource()->getAttribute($attribute)->getFrontendLabel() . ':</td><td> '. $value . '</td></tr>';