На джумлафоруме задали вопрос - как при выводе типов товара на flypage выводить только те, которые не пустые. Как показано ниже(Слева, как есть, справа - как надо):
На flypage тип выводится заглушкой
<?php echo $product_type ?>
причем она уже содержит всю таблицу целиком. Найдем где она формируется - это файл /components/com_virtuemart/themes/default/templates/common/product_type.tpl.php
Открываем его и находим
?><tr class="<?php echo $bgcolor;?> height="18"> <td width="30%"><?php echo $product_type_params["parameter_label"]; if ( !empty($product_type_params["tooltip"] ) ) { ?> <?php echo $product_type_params["tooltip"]; } ?> </td><td><?php echo $product_type_params["parameter_value"]; if ( !empty($product_type_params["unit"] ) ) { echo " ".$product_type_params["unit"]; } ?> </td></tr>
и превращаем в
if(!empty($product_type_params["parameter_value"])) { ?><tr class="<?php echo $bgcolor;?> height="18"> <td width="30%"><?php echo $product_type_params["parameter_label"]; if ( !empty($product_type_params["tooltip"] ) ) { ?> <?php echo $product_type_params["tooltip"]; } ?> </td><td><?php echo $product_type_params["parameter_value"]; if ( !empty($product_type_params["unit"] ) ) { echo " ".$product_type_params["unit"]; } ?> </td></tr> <?php } ?>
Вот и все. Кстати, здесь же мы можем навесить необходимые классы, либо вообще поменять верстку на блочную