2014-03-04 3 views
0

임 라디오 쇼 웹 사이트를위한 프로그램을 만들려고합니다. 나는 모든 요일이있는 사용자 정의 필드가 있으며 각 게시물을 해당 일의 목록에 넣고 싶습니다.wordpress loop inside foreach 상태

지금까지 Iv는 아래 코드를 갖고 있으며 모든 요일에 대해 7 개의 목록을 만들었지 만 각 목록에는 모두 동일한 게시물이 있습니다. 누구나이 작업을 수행하는 방법을 알고 있습니까? 아니면 다른 것이 더 좋을까요?

<?php 
$days = array(
    'Monday', 
    'Tuesday', 
    'Wednesday', 
    'Thursday', 
    'Friday', 
    'Saturday', 
    'Sunday', 
); 

$guide = array(
    'post_type' => 'shows', 
    'posts_per_page' => -1, 
    'meta_query' => array(
     array(
      'key' => 'show_day', 
      'value' => $dayg, 
      'compare' => 'like' 
      ) 
     ) 
    ); 
?> 

<h3 class="guide"> 
    <?php the_title(); ?> 
</h3> 
<?php foreach($days as $dayg) { ?> 

    <ul class="day"> 
     <h3> 
      <?php echo $dayg; ?> 
     </h3> 

     <?php query_posts($guide); while(have_posts()) : the_post(); ?> 

     <li><?php the_title(); echo ' | ' , the_field('show_day'); ?></li> 

     <?php endwhile; wp_reset_query(); ?> 

    </ul> 

<?php } ?> 

누구나

+0

일 동안 별도의 목록을 원하십니까 ??? –

+0

예, 매일 별개의 목록 – Nath

+1

매일 다른 쿼리 및 루프를 추가해야 할 것보다 ... –

답변

2

이 당신의 코드를 바꿉니다 알 -

<?php 
$days = array(
    'Monday', 
    'Tuesday', 
    'Wednesday', 
    'Thursday', 
    'Friday', 
    'Saturday', 
    'Sunday', 
); 
?> 

<h3 class="guide"> 
    <?php the_title(); ?> 
</h3> 
<?php foreach($days as $dayg) { ?> 

<?php 
$guide = array(
     'post_type' => 'shows', 
     'posts_per_page' => -1, 
     'meta_query' => array(
       array(
         'key' => 'show_day', 
         'value' => $dayg, 
         'compare' => 'like' 
       ) 
     ) 
); 
?> 
    <ul class="day"> 
     <h3> 
      <?php echo $dayg; ?> 
     </h3> 
     <?php query_posts($guide); while(have_posts()) : the_post(); ?> 

     <li><?php the_title(); echo ' | ' , the_field('show_day'); ?></li> 

     <?php endwhile; wp_reset_query(); ?> 
    </ul> 
<?php } ?> 

당신이 $dayg가 설정되지 않은 이유를 루프 그게 외부 $guide 변수를 추가되기 때문에이 작동합니다 ...

+1

정말 멋집니다. 고맙습니다. – Nath