2010-08-10 2 views
0

여기 내 워드 프레스 게시물의 예입니다. 나는 마지막 나처럼되고 싶어 <li>PHP : 홀수/짝수 루프를 순서화되지 않은 목록에 추가하는 방법

뭔가

<li class='lastli'>

<ul class="tabs"> 
<?php 
    global $post; 
    $myposts = get_posts('numberposts=3'); 
    foreach($myposts as $post) : 
    setup_postdata($post); 
    ?> 
<li><a href="#"><?php the_title(); ?></a></li> 
<?php endforeach; ?>   
</ul> 
같은 결과의 몇 가지 클래스를 추가 할 :

<ul> 
<li>Title 1</li> 
<li>Title 1</li> 
<li class='lastli'>Title 1</li> 
<ul> 

정렬되지 않은 목록의 모든 마지막을 것이다 <li class='lastli'>이되어야합니다. 어떻게해야하는지 알려주시겠습니까? 루프

답변

3

사용 a를

<ul class="tabs"> 
<?php 
    global $post; 
    $myposts = get_posts('numberposts=3'); 
    $nposts = count($myposts); 
    for($i=0;$i<$nposts;$i++): 
    $post = $myposts[$i]; 
    setup_postdata($post); 
    ?> 
<li<?php if ($i==$nposts-1):?> class='lastli'<?php endif;?>><a href="#"><?php the_title(); ?></a></li> 
<?php endfor; ?>   
</ul> 

참고 : 루프 전에 배열의 크기를 계산하는 것은 좋은 습관, 그렇지 않으면 PHP는 루프

+0

감사합니다. Ben 10! 진짜 최고 고침. ':?> class'는 공백이 필요합니다. – kampit

+0

좋은 지적. 고정 – Ben

0
<ul class="tabs"> 
<?php 
    global $post; 
    $myposts = get_posts('numberposts=3'); 
    $i = 0; 
    for ($i = 0; $i < count($myposts); $i++) { 
    $post = $myposts[$i]; 
    setup_postdata($post); 
    ?> 
<li <?= ($i==count($myposts)-1)?"class='lastli'":"" ?>><a href="#"><?php the_title(); ?></a></li> 
<?php } ?>   
</ul> 
1
<ul class="tabs"> 
<?php 
    global $post; 
    $myposts = get_posts('numberposts=3'); 
    $nposts = count($myposts); 
    $odd_even_class = array('odd_class', 'even_class'); 

    for($i=0;$i<$nposts-1;$i++): 
    $post = $myposts[$i]; 
    setup_postdata($post); 
    ?> 
<li <?php echo $odd_even_class[($i+1)%2];?>><a href="#"><?php the_title(); ?></a></li> 
<?php 
endfor; 
$post = $myposts[$i]; 
setup_postdata($post); 

<li class='lastli'><a href="#"><?php the_title();?></a></li>   
</ul> 
의 매 라운드에서 그것을 평가하는 것입니다

조건부 설명이 필요하지 않습니다.

+0

배열 조회가 조건 테스트보다 빠르면 잘 모르겠다 :) 또한, 아마도 $ curr_class가 필요하지 않을 것입니다. $ i % 2를 인덱스로 사용할 수 있습니다. 배열은 아마 있어야합니다. array ('even_class', 'odd_class') – Ben

+0

나는 odd/even 클래스 선택 기술을 만들었습니다. 나는 말했습니다 - "당신은 조건문을 필요로하지 않습니다 :)", 왜냐하면 당신의 마지막 행 선택 조건 때문에, 적어도 나는 그 것을 쉽게 피할 수있었습니다 :). 홀수/짝수가 아닙니다. – Sadat

관련 문제