模板部件中的条件出现意外结果

时间:2012-01-11 作者:Sisir

Scenario: 我有一个模板部件loop-product.php 我是从那里打来的home.php, taxonomy.php 和页面模板template-products.php. 在模板部件内部loop-product.php 文件我正在通过检查设置列数is_home() 条件。

Problem:对于主页、分类页面,条件可以很好地工作,但它仍然设置在页面模板上。在产品项上,我添加了一个类columns-$cols 所以你可以在网站上查看。Its显示columns-4 在产品模板页面上显示columns-3.

<?php
    $j = 1;
    if(is_home()){
        $cols = 4;
    }else{
        $cols = 3;
    }
    if(have_posts()):while(have_posts()):the_post();

        // getting thumbnail image here 
    ?>

            <div class="product-item <?php echo \'columns-\'.$cols ?>" <?php if($j%$cols == 0){ echo \'style="margin-right:0;"\'; } ?>>
              <a href="<?php the_permalink(); ?>">
                <span class="product-img">
                    <img src="<?php echo $img[0]; ?>" width="100" height="75" alt="<?php the_title(); ?>">
                </span>
                <span class="desc">
                    <h2><?php the_title(); ?></h2>
                <?php
                    if($price): ?>
                    <span class="price">Price: <?php echo $price; ?> BDT</span>
                <?php endif; ?>                    

                     </span>
                </a>
             </div>
             <?php if($j%$cols == 0){ echo \'<div class="clear"></div>\'; } ?>

             <?php $j++; endwhile; endif; ?>

                <div class="clear"></div>
在此处查看站点http://computercarebd.com/ 感谢您的时间。谢谢

页面模板代码:http://pastebin.com/CzRgzzVF

1 个回复
SO网友:Brian Fegter

为什么不使用body类将这些元素作为CSS的目标呢。您可以执行以下操作,使您的PHP更加干净。

.product-item{width:33%;}
.home .product-item{width:25%;}

结束

相关推荐