WordPress高级自定义字段从Repeater中的Checkbox获取值

时间:2014-09-09 04:13:52

标签: wordpress checkbox advanced-custom-fields

我无法弄清楚世界上如何获得在转发器字段中输入的复选框的值。只有一个选择。基本上,如果用户勾选复选框,则应输出一个类。

在代码示例中,我还没有类中的值,因为我只是想让它打印一些东西! ARG。

感谢您提供的任何帮助,我很感激!

<?php if( have_rows( 'milestone_module' ) ) : ?>

<section id="tao-timeline">

    <?php 

        while( have_rows( 'milestone_module' ) ) : the_row(); 
        // Vars
        $milestone_module_date = get_sub_field( 'milestone_module_date' );
        $milestone_module_copy = get_sub_field( 'milestone_module_copy' );
        $field = get_field_object('milestone_long_date');
        $value = get_field('milestone_long_date');
        $label = $field['choices'][ $value ];
    ?>

    <div class="tao-timeline-block">
        <?php if( $milestone_module_date ) : ?>
            <span class="tao-timeline-date">
                <?php echo $label; ?>
                <?php echo $milestone_module_date; ?>
            </span><!--/.tao-timeline-date-->
        <?php endif; ?>

        <?php if( $milestone_module_copy ) : ?>
            <div class="tao-timeline-content">
                <?php echo $milestone_module_copy; ?>
            </div><!--/.tao-timeline-content-->
        <?php endif; ?>

    </div><!--/.tao-timeline-block-->

    <?php endwhile; wp_reset_postdata(); ?>

</section><!--/#tao-timeline-->

<?php endif; ?>

更新了真/假的代码,但仍无效...

<?php if( have_rows( 'milestone_module' ) ) : ?>

                        <section id="tao-timeline">

                            <?php 

                                while( have_rows( 'milestone_module' ) ) : the_row(); 
                                // Vars
                                $milestone_module_date = get_sub_field( 'milestone_module_date' );
                                $milestone_module_copy = get_sub_field( 'milestone_module_copy' );
                            ?>

                            <div class="tao-timeline-block">
                                <?php if( get_field('milestone_long_date') ) { ?>
                                    <span class="tao-timeline-date long-date">
                                        <?php echo $milestone_module_date; ?>
                                    </span><!--/.tao-timeline-date-->
                                <?php } else { ?>
                                    <span class="tao-timeline-date">
                                        <?php echo $milestone_module_date; ?>
                                    </span><!--/.tao-timeline-date-->
                                <?php } ?>

                                <?php if( $milestone_module_copy ) : ?>
                                    <div class="tao-timeline-content">
                                        <?php echo $milestone_module_copy; ?>
                                    </div><!--/.tao-timeline-content-->
                                <?php endif; ?>

                            </div><!--/.tao-timeline-block-->

                            <?php endwhile; wp_reset_postdata(); ?>

                        </section><!--/#tao-timeline-->

                    <?php endif; ?>

1 个答案:

答案 0 :(得分:1)

克里斯,我相当肯定这就是你如何使这个工作(仅对于真/假段):

  <?php if (get_sub_field('milestone_long_date') == true) { ?>
      <span class="tao-timeline-date long-date">
      <?php echo $milestone_module_date; ?>
      </span><!--/.tao-timeline-date-->
  <?php } else { ?>
       <span class="tao-timeline-date">
       <?php echo $milestone_module_date; ?>
       </span><!--/.tao-timeline-date-->
  <?php } ?>

否则,如果你有一个无线电领域,我知道它的代码。我没有必要使用真/假。

如果是是/否单选按钮:

<?php $long-date = get_sub_field('milestone_long_date');  ?>

 <?php if ($long-date == 'Yes') { ?>
           <span class="tao-timeline-date long-date">
          <?php echo $milestone_module_date; ?>
          </span><!--/.tao-timeline-date-->
<?php } else { ( $long-date == 'No' ) ?>
         <span class="tao-timeline-date">
        <?php echo $milestone_module_date; ?>
         </span><!--/.tao-timeline-date-->
<?php }; ?>

我知道收音机会起作用。我必须对true / false进行一些测试以确认。