Question

J'ai une table sur ma page d'accueil qui montre 5 produits d'une catégorie, j'ai fait appelé "recommandé pour vous". Cela fonctionne parfaitement bien.

La seule chose que je veux ajouter, c'est que si le produit a un prix spécial (est en vente), je veux qu'une petite image apparaisse dans l'image du produit. Je l'ai fait dans d'autres endroits sur mon site Web en leur donnant la classe "Sale-Label". Cependant, je ne peux pas définir cette classe sur toutes les images du produit car elles ne sont pas toutes en vente.

Je suppose que j'ai besoin d'une instruction IF pour vérifier si le produit a un prix spécial. Si c'est vrai, définissez la classe sur "Sale-Babel".

Cependant, je ne sais pas comment coder cela si quelqu'un pouvait aider.

Ceci est mon code que j'utilise pour afficher les produits sur ma page d'accueil.

<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; ?>

Merci pour toute aide

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top