web-dev-qa-db-fra.com

comment définir la boucle de catégorie dernière classe dans la troisième

enter image description here

sur mon fichier category.php page, j'utilise la liste des produits,

la boucle de bloc de produit est,

produit-bloc, produit-bloc, produit-bloc dernier

dernière classe pas de marge gauche,

comment définir le troisième produit "dernière classe" dans la boucle de catégorie?

mon content.php

<div class="goods_list catalog_goods">
            <div class="goods_item">
              <div class="foto">
                <div class="shadow"></div><?php the_excerpt(); ?>
                <a href="<?php the_permalink(); ?>"><?php echo get_the_post_thumbnail($id,  array(220,220)); ?></a>
              </div>
              <div class="bot">
               <a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>

                <div class="stars"></div>

                <div class="order">
                  <a class="but_buy"><i class="icon-shopping-cart icon-large"></i> &nbsp;Buy </a>
                  <span class="price">$45.00</span>
                </div>
              </div>
            </div>
          </div>

je dois définir la troisième div good_list catalog_goods last

mon fichier category.php

  <div class="catalog_right">
        <div class="catalog_goods_block">


        <?php if ( have_posts() ) : ?>



            <?php twentyeleven_content_nav( 'nav-above' ); ?>

            <?php /* Start the Loop */ ?>

            <?php while ( have_posts() ) : the_post(); ?>
            <?php
                    /* Include the Post-Format-specific template for the content.
                     * If you want to overload this in a child theme then include a file
                     * called content-___.php (where ___ is the Post Format name) and that will be used instead.
                     */
                    get_template_part( 'content', get_post_format() );
                ?>

            <?php endwhile; ?>
1
simandir

Vous pouvez le faire avec l'opérateur php modulus %.

Permet de travailler avec votre code.

    <?php if ( have_posts() ) : ?>



        <?php twentyeleven_content_nav( 'nav-above' ); ?>

        <?php /* Start the Loop */ ?>
        <?php $count = 1; ?>
        <?php while ( have_posts() ) : the_post(); ?>
        <?php
                /* Include the Post-Format-specific template for the content.
                 * If you want to overload this in a child theme then include a file
                 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
                 */
                get_template_part( 'content', get_post_format() );
            ?>

        <?php endwhile; ?>

Ajouter $count=1

Puis dans votre content.php:

    <?php
        global $count;
        if ($count % 3 === 0) {
            $no_margin = 'last';
        }
    ?>    
    <div class="goods_list catalog_goods <?php echo $no_margin; ?>">
                    <div class="goods_item">
                      <div class="foto">
                        <div class="shadow"></div><?php the_excerpt(); ?>
                        <a href="<?php the_permalink(); ?>"><?php echo get_the_post_thumbnail($id,  array(220,220)); ?></a>
                      </div>
                      <div class="bot">
                       <a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>

                        <div class="stars"></div>

                        <div class="order">
                          <a class="but_buy"><i class="icon-shopping-cart icon-large"></i> &nbsp;Buy </a>
                          <span class="price">$45.00</span>
                        </div>
                      </div>
                    </div>
                  </div>
<?php ++$count; ?>

Rendez la variable $count globale afin qu’elle soit accessible.

Heres la partie principale

Reste de $count divisé par 3

et ajouter:

<div class="goods_list catalog_goods <?php echo $no_margin; ?>">

echo $no_margin

Au dernier ajout:

<?php ++$count; ?>

il sera donc incrémenté jusqu'à la fin de la boucle.

1
Rahil Wazir