2017-02-12 162 views
1
<?php if(have_rows('team_members')): ?> 
    <?php while(have_rows('team_members')): the_row(); ?> 
     <div class="team-member-section"> 
      <div class="container"> 
       <?php if(get_row_layout() == 'team_members'): ?> 
        <section class="team-member-section">         
         <?php 
          $team_title = get_sub_field('team_title'); 
          $team_member = get_sub_field('team_member'); 
          $description = get_sub_field('description'); 
         ?> 
         <div class="team-title"> 
          <?php echo $team_title; ?> 
         </div> 
         <?php if($team_member): ?> 
          <?php if (get_field('has_description') == 'yes') : ?> 
           <?php echo 'has_description'; ?> 
          <?php else : ?> 
           <?php echo 'has_no_description'; ?> 
          <?php endif; ?> 
         <?php endif; ?> 
        </section> 
       <?php endif; ?> 
      </div> 
     </div> 
    <?php endwhile; ?> 
<?php endif; ?> 

它只显示值“has_no_description”高级自定义字段真/假现场,为什么是我的真/假现场没有工作,如何使它工作,所以这两种情况下会显示出来。不工作

enter image description here

UPDATE:

<?php if(have_rows('team_members')): ?> 
<?php while(have_rows('team_members')): the_row(); ?> 
    <div class="team-member-section"> 
     <div class="container"> 
      <?php if(get_row_layout() == 'team_members'): ?> 
       <section class="team-member-section">         
        <?php 
         $team_title = get_sub_field('team_title'); 
         $team_member = get_sub_field('team_member'); 
         $description = get_sub_field('description'); 
        ?> 
        <div class="team-title"> 
         <?php echo $team_title; ?> 
        </div> 
        <?php if($team_member): ?> 
         <?php if (get_field('has_description')) : ?> 

         <?php foreach($team_member as $post): ?> 
          <?php setup_postdata($post); ?> 
           <div class="col-sm-4"> 
            <div class="team-member"> 
             <div class="member-img"> 
              <?php the_post_thumbnail(); ?> 
             </div> 
             <h4><?php the_title(); ?></h4> 
             <?php the_content(); ?> 
             <?php echo "Has description"; ?> 
             <?php $overlay_text = get_field('overlay_text'); ?> 

             <?php if($overlay_text != ''): ?> 
              <div class="overlay-text"> 
               <p><?php echo $overlay_text; ?></p> 
              </div> 
             <?php endif; ?> 
            </div> 
           </div> 
          <?php wp_reset_postdata(); ?> 
         <?php endforeach; ?> 
         <?php else : ?> 
         <?php foreach($team_member as $post): ?> 
          <?php setup_postdata($post); ?> 
           <div class="col-sm-4"> 
            <div class="team-member"> 
             <div class="member-img"> 
              <?php the_post_thumbnail(); ?> 
             </div> 
             <h4><?php the_title(); ?></h4> 
             <?php the_content(); ?> 
             <?php echo "Doesn not have description"; ?> 
             <?php $overlay_text = get_field('overlay_text'); ?> 

             <?php if($overlay_text != ''): ?> 
              <div class="overlay-text"> 
               <p><?php echo $overlay_text; ?></p> 
              </div> 
             <?php endif; ?> 
            </div> 
           </div> 


          <?php wp_reset_postdata(); ?> 
         <?php endforeach; ?> 

         <?php endif; ?> 
        <?php endif; ?> 
       </section> 
      <?php endif; ?> 
     </div> 
    </div> 
<?php endwhile; ?> 

我贴我的全部代码。 我认为这里的问题是字段'has_description'只显示在“团队”自定义帖子类型,这就是为什么该字段返回null,但我不知道。有人可以使它工作吗?

+0

<?php if(get_field('has_description')=='yes'):?>,这里我使用'has_description'字段 –

+0

has_description是一个真/假类型,它显示为一个复选框。 –

+0

不幸的是,它只显示else分支。 –

回答

1
<?php if(have_rows('team_members')): ?> 
<?php while(have_rows('team_members')): the_row(); ?> 
    <div class="team-member-section"> 
     <div class="container"> 
      <?php if(get_row_layout() == 'team_members'): ?> 
       <section class="team-member-section">         
        <?php 
         $team_title = get_sub_field('team_title'); 
         $team_member = get_sub_field('team_member'); 
         $description = get_sub_field('description'); 
        ?> 
        <div class="team-title"> 
         <?php echo $team_title; ?> 
        </div> 
        <?php if($team_member): ?> 
         <?php foreach($team_member as $post): ?> 
          <?php if (get_field('has_description')) : ?> 
          <?php setup_postdata($post); ?> 
           <div class="col-sm-4"> 
            <div class="team-member"> 
             <div class="member-img"> 
              <?php the_post_thumbnail(); ?> 
             </div> 
             <h4><?php the_title(); ?></h4> 
             <?php the_content(); ?> 
             <?php echo "Has description"; ?> 
             <?php $overlay_text = get_field('overlay_text'); ?> 

             <?php if($overlay_text != ''): ?> 
              <div class="overlay-text"> 
               <p><?php echo $overlay_text; ?></p> 
              </div> 
             <?php endif; ?> 
            </div> 
           </div> 
          <?php wp_reset_postdata(); ?> 
          <?php else : ?> 
           <div class="col-sm-4"> 
            <div class="team-member"> 
             <div class="member-img"> 
              <?php the_post_thumbnail(); ?> 
             </div> 
             <h4><?php the_title(); ?></h4> 
             <?php the_content(); ?> 
             <?php echo "NOOOOOOO Description"; ?> 
             <?php $overlay_text = get_field('overlay_text'); ?> 

             <?php if($overlay_text != ''): ?> 
              <div class="overlay-text"> 
               <p><?php echo $overlay_text; ?></p> 
              </div> 
             <?php endif; ?> 
            </div> 
           </div> 
          <?php endif; ?> 
         <?php endforeach; ?> 
        <?php endif; ?> 
       </section> 
      <?php endif; ?> 
     </div> 
    </div> 
<?php endwhile; ?> 

它的工作原理是这样的,我感动的foreach内的真/假<?php if (get_field('has_description')) : ?>场,因为真/假字段所属球队自定义后的类型,是圈外总是让它空