Pregunta

Tengo una mesa en mi página de inicio que muestra 5 productos de una categoría, llamado "Recomendado para ti". Esto funciona perfectamente bien.

Lo único que quiero agregar es que si el producto tiene un precio especial (está a la venta), quiero que aparezca una pequeña imagen en la imagen del producto. He hecho esto en otros lugares de mi sitio web dándoles la clase "Sale-Label". Sin embargo, no puedo establecer esta clase en todas las imágenes del producto, ya que no todas están a la venta.

Supongo que necesito una declaración IF para verificar si el producto tiene un precio especial. Si es cierto, entonces configure la clase en "Sale-Label".

Sin embargo, no sé cómo codificar esto si alguien pudiera ayudar.

Este es mi código que utilizo para mostrar los productos en mi página de inicio.

<div class="random_featured_products">
<?php
Mage::getSingleton('catalog/layer')->setData("product_collection",NULL);
$this->_productCollection = null;
$_productCollection=$this->getLoadedProductCollection();
$_productCollection->getSelect()->order(new Zend_Db_Expr('RAND()'));

?>
    <h4 class="recommended_title">
    <!--class="Recommended_title"-->
    <?php echo $this->__("Recommended For You");?></h4>
    <hr class="title_left">
<div class="products-grid two_columns_5">
<?php $_productCollection=$this->getLoadedProductCollection() ?>
<?php if(!$_productCollection->count()): ?>
<div class="padder">
<div class="note-msg">
    <?php echo $this->__('There are no products matching the selection.') ?>
</div>
</div>
<?php else: ?>

<?php // Grid Mode ?>
 <!-- the class name will change to .listing-type-cell if viewing in list mode -->
<?php $_collectionSize = $_productCollection->count() ?>

<?php $_items = $_productCollection->getItems(); 
           shuffle($_items); ?>

    <table>
    <?php $i=0; foreach ($_items as $_product): ?>
    <?php if ($i++%4==0): ?>
    <tr>
    <?php endif ?>

    <ol class="grid ">
        <li class="item1">
            <p class="product-image">
                <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getShortName()) ?>">
                    <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image'); ?>" alt="<?php echo $this->htmlEscape($_product->getShortName()) ?>"/>
                </a>
            </p>
            <p  class="product_desc" ><a  href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getShortName()) ?>"><?php echo $this->htmlEscape($_product->getShortName()) ?></a></p>
            <?php if($_product->getRatingSummary()): ?>
                <!--?php echo $this->getReviewsSummaryHtml($_product, 'short') ?-->
                <?php echo $this->getReviewsSummaryHtml($_product) ?>
            <?php endif; ?>

            <div class="pro_price">
            <?php echo $this->getPriceHtml($_product, true) 
            ?>
            </div>

        </li>
    <?php if ($i%5==0 && $i!=$_collectionSize): ?>
    </tr>
    <?php endif ?>

    <?php if ($i==5) break;  // show 5 products max ?> 

    <?php endforeach ?>
    <?php for($i;$i%5!=0;$i++): ?>
          <td class="empty-product">&nbsp;</td>
    <?php endfor ?>
    <?php if ($i%5==0): ?>
    </tr>
    <?php endif ?>
    </table>
    <script type="text/javascript">decorateTable('product-list-table')</script>
</div>
</div>
<?php endif; ?>

Gracias por cualquier ayuda

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top