使用ACF显示选中以及未选中复选框

时间:2015-03-27 12:33:28

标签: css wordpress checkbox advanced-custom-fields

我试图在acf网站上找到一个相关的主题,但这并没有给我正确的答案。希望你们能帮助我。

我正在使用ACF构建一个自定义网站,一切都很完美,我设法几乎完全按照我想要的方式获得所有内容但是使用复选框我只能显示已选中的但不是未选中的。

我的想法是,未经检查的人会有一个不同的"类"或" id"我会用不同的CSS风格显示它们。

这是出租公寓的功能列表,例如:互联网,电视等。很像airbnb的网站。

所以代码。我设法让这段代码起作用:

<?php

    $values = get_field('room_features');
    if($values)
    {
        echo '<ul>';

        foreach($values as $value)
        {
            echo '<li>' . $value . '</li>';
        }

        echo '</ul>';
    }

    ?>

但是这并没有显示未经检查的,只检查过。

我会对此有所了解:)

2 个答案:

答案 0 :(得分:1)

您可以使用get_field_object()函数返回与某个字段关联的所有数据的数组:http://www.advancedcustomfields.com/resources/get_field_object/

这是复选框字段上返回数组的示例。注意“choices”数组。

Array
(
    [key] => field_551556a8ce42d
    [label] => Test
    [name] => test
    [_name] => test
    [type] => checkbox
    [order_no] => 9
    [instructions] => 
    [required] => 0
    [id] => acf-field-test
    [class] => checkbox
    [conditional_logic] => Array
        (
            [status] => 0
            [rules] => Array
                (
                    [0] => Array
                        (
                            [field] => null
                            [operator] => ==
                        )

                )

            [allorany] => all
        )

    [choices] => Array
        (
            [option 1] => option 1
            [option 2] => option 2
        )

    [default_value] => 
    [layout] => vertical
    [field_group] => 19
    [value] => 
)

答案 1 :(得分:0)

您可以使用以下代码。

$field = get_field_object('field_name');

您将获得包含所有复选框选项的对象。