2011-02-25 19 views
0

我是新來的WordPress主題,並希望你能幫我簡化這個循環。最重要的是消除需要兩次列表項目,但我也歡迎其他改進建議。WordPress的:幫助簡化如果elseif列表循環

我感謝所有的幫助,並會標記正確的答案。謝謝。

<ul> 

<?php if (is_page('about')) { ;?> 

    <?php 
     query_posts("post_type=page&post_parent=6"); 
     if (have_posts()) : while (have_posts()) : the_post(); 
    ?> 

     <li>blah blah blah</li> 

    <?php endwhile; else: ?> 
     <p>Some error message or similar.</p> 
    <?php endif; ?> 

<?php } elseif (is_page('history')) { ;?> 

    <?php 
     query_posts("post_type=page&post_parent=4"); 
     if (have_posts()) : while (have_posts()) : the_post(); 
    ?> 

     <li>blah blah blah</li> 

    <?php endwhile; else: ?> 
     <p>Some error message or similar.</p> 
    <?php endif; ?> 

<?php } ?> 

</ul> 

謝謝rayman86。這確實需要一些調整來獲得工作:

<?php 
if (is_page('about')) { 
     query_posts("post_type=page&post_parent=6"); 
} elseif (is_page('history')) { 
     query_posts("post_type=page&post_parent=4"); 
} 

if (have_posts()) : while (have_posts()) : the_post(); 
?> 

     <li>blah blah blah</li> 

    <?php endwhile; else: ?> 
     <p>Some error message or similar.</p> 
    <?php endif; ?> 

</ul> 

回答

2
<ul> 

<?php 
if (is_page('about')) { 
     query_posts("post_type=page&post_parent=6"); 
} elseif (is_page('history')) { 
     query_posts("post_type=page&post_parent=4"); 
} 

if (have_posts()) { while (have_posts()) : the_post(); 
    ?> 

     <li>blah blah blah</li> 

    <?php endwhile; else: ?> 
     <p>Some error message or similar.</p> 


</ul>