2012-10-02 12 views
7

मैं एक Wordpress पाश के रूप में निम्नानुसार है जोड़ सकता हूँ:मैं कैसे एक वर्ग हर वें आइटम करने के लिए एक php पाश में (वर्डप्रेस)

<?php $loop = new WP_Query(array('post_type' => 'portfolio')); ?> 
    <?php while ($loop->have_posts()) : $loop->the_post(); ?> 
    <div class="four columns"> 
     <?php the_content(); //along with other stuff in looped div ?> 
    </div> 
<?php endwhile ?> 

हर (4n -3 के लिए मैं एक 'अल्फा' वर्ग कैसे जोड़ सकते हैं) th div (div.four.columns) और एक 'ओमेगा' वर्ग प्रत्येक (4 एन) वें आइटम php का उपयोग कर?

धन्यवाद (एक बहुत!), जेमी

+7

एक काउंटर रखें, 0 से शुरू, और 1 प्रत्येक पाश से वृद्धि की जाती। फिर यदि 'काउंटर% 3 == 0' तो यह "हर 3 पाश" है। इसी तरह, "हर 4 वें पाश" के लिए काउंटर% 4 == 0'। आवश्यकतानुसार अतिरिक्त गणित करें। –

उत्तर

23

क्यों एक काउंटर नहीं जोड़ सकते हैं और प्रत्येक स्तंभ क्या तत्व आप वर्तमान में गूंज रहे हैं में पता करने के लिए प्राप्त करने के लिए मापांक दृष्टिकोण का उपयोग करें।

मान लें कि आपके पास निर्दिष्ट 4 कॉलम हैं।
आप काउंटर के साथ शुरू = 1
1% 4 = 1 (आप पहले तत्व में हैं)
2% 4 = 2 (आप दूसरा तत्व में हैं)
3% 4 = 3 (आप में हैं तीसरा तत्व)
4% 4 = 0 (आप चौथे तत्व में हैं)
5% 4 = 1 (आप पहले तत्व में हैं)
6% 4 = 2 (आप दूसरा तत्व में हैं)

और आप कक्षा के साथ एक if कथन का उपयोग निम्न

के रूप में करते हैं की गई टिप्पणियों से
<?php $counter = 1 ?> 
<?php $loop = new WP_Query(array('post_type' => 'portfolio')); ?> 
    <?php while ($loop->have_posts()) : $loop->the_post(); ?> 
    <div class="four columns <?php if ($counter % 4 == 1){echo 'alpha'}else if ($counter % 4 == 0){echo 'omega'} ?>"> 
     <?php the_content(); //along with other stuff in looped div ?> 
    </div> 
<?php $counter++ ; 
endwhile ?> 
1

कार्यान्वयन:

<?php $loop = new WP_Query(array('post_type' => 'portfolio')); ?> 
    <?php 
     $i = 0; 
     while ($loop->have_posts()) : $loop->the_post(); 
      if($i % 4 == 0) 
      $class = 'omega'; 
      else 
      $class = ''; 
     ?> 
    <div class="four columns <?php echo $class ?>"> 
     <?php 
      the_content(); // Along with other stuff in looped div 
      $i++; 
     ?> 
    </div> 
<?php endwhile ?> 
+0

लेकिन आप प्रत्येक लूप पर '$ वर्ग' को रीसेट नहीं कर रहे हैं। एक बार '$ वर्ग = 'ओमेगा'; 'होता है,' $ वर्ग' हमेशा' ओमेगा 'होगा। '$ वर्ग = ''; 'जबकि लूप के अंदर होना चाहिए। –

+1

आप सही हैं :) – JvdBerg