Wordpress ACF if语句

时间:2019-05-16 17:43:05

标签: wordpress advanced-custom-fields

我使用了“高级自定义字段(ACF)”复选框选项。一种选择是“红色”,第二种是“蓝色”。我想创建一个条件来检查用户选择了什么颜色。 这是我的代码:

 <?php 
 $val = get_field( 'checkbox' );
   if ( $val=='red' ) {
    echo ' value is red';
    } else {
    echo 'value is not red';
    }
 ?>

如果用户选中了红色选项,则此代码应输出“值是红色”,但它不起作用。谁知道可能是什么问题?波纹管已附加资产。enter image description here enter image description here

1 个答案:

答案 0 :(得分:1)

使用您当前的配置,ACF将转到return an array,这就是为什么它当前不起作用的原因。您需要改为check to see if red is in the array

<?php
    $val = get_field( 'checkbox' );
    if (in_array('red', $val)) {
        echo ' value is red';
    } else {
        echo 'value is not red';
    }
?>

话虽如此,如果这是您的实际用例,我建议改用true/false field。使用当前配置,用户可以选择bluered,并且仍然会在前端返回value is red