如何从类别自定义字段获取值?

时间:2018-11-23 10:47:39

标签: php wordpress

我为名为featured的类别创建了一个自定义字段,它是checkbox的{​​{1}}。

true or false

我正在尝试检索其$catArray = array(); $args = array( 'orderby' => 'slug', 'hide_empty' => 0, ); $categories = get_categories( $args ); foreach ( $categories as $category ) { $term = get_queried_object(); $feat = get_field('featured', $term); echo $feat; if ( $feat ) { echo '<li><a href="' . get_category_link( $category->term_id ) . '" rel="bookmark">' . $category->name . '</a></li>'; array_push($catArray, $category->cat_ID); } else { echo "no"; } } ,如果value我需要true,否则不需要echo

以上内容不在循环之内。

我还尝试检查该字段是否为空,但是一旦我选中或取消选中它,它就具有一个值(真/假),因此一旦我们单击它,它将始终显示

echo

我也尝试了以下方法

$catArray = array();
$args = array(
    'orderby' => 'slug',
    'hide_empty' => 0,
);
$categories = get_categories( $args );
foreach ( $categories as $category ) {
    $fields =  get_term_meta( $category->cat_ID );
    if(!empty($fields['_featured'][0])) {
        echo '<li><a href="' . get_category_link( $category->term_id ) . '" rel="bookmark">' . $category->name . '</a></li>';
        array_push($catArray, $category->cat_ID);
    }
}

即使我未选中所有这些选项,它也会为我提供以下信息

$categories = get_categories( $args );
foreach ( $categories as $category ) {
    $fields =  get_term_meta( $category->cat_ID );
    $feat = $fields['_featured'];
    if(!empty($fields['_featured'][0]) && $fields['_featured'][0]) {
        var_dump($feat);
        print "<pre>";
        echo $feat."<br>";
        print "</pre>";
        echo '<li><a href="' . get_category_link( $category->term_id ) . '" rel="bookmark">' . $category->name . '</a></li>';
        array_push($catArray, $category->cat_ID);
    }
}

1 个答案:

答案 0 :(得分:0)

acf字段中的复选框未选中时返回空。 尝试使用单选按钮并将“选项”用作...

true : True
false : False

然后以涩味检查。 if ( $feat === 'true' )