高级自定义字段 - 带有真/假复选框的 if/else 语句


Advanced Custom Fields - If/Else Statement with true/false checkbox

我使用Wordpress的高级自定义字段添加了一个真/假复选框。我希望能够选择一个修改页面模板的选项。

我正在将此选项添加到WooCommerce/Wordpress中的产品类别中。我已经在代码中包含了这段逻辑。

我有以下代码,但它不起作用。我怀疑这是因为它不在循环内。但是,我要插入的代码包含循环。非常感谢有关代码的任何想法/指导

<?php if (is_product_category() && get_field('field_name') == true) { ?>
    <div class="custom-sidebar-right">
            <?php if ( have_posts() ) : ?>
            <?php while ( have_posts() ) : the_post(); ?>
                <?php woocommerce_get_template_part( 'content', 'product' ); ?>                 
            <?php endwhile; // end of the loop. ?>
    </div>
<?php } elseif (is_product_category() && get_field('field_name') == false ) { // Added close brace
<div> Empty Test </div>
}
好的

,我重新阅读了ACF的文档,发现了以下内容(http://www.advancedcustomfields.com/resources/how-to/how-to-get-values-from-a-taxonomy-term/)

所以我用一些逻辑应用,现在它可以工作了。感谢您var_dump指针,因为它帮助我解决了这个问题。

// vars
$queried_object = get_queried_object(); 
$taxonomy = $queried_object->taxonomy;
$term_id = $queried_object->term_id;  
$is_field_name = get_field('field_name', $taxonomy . '_' . $term_id);
if (is_product_category() && $is_field_name == false) { ?>

if 语句中缺少括号,改变

  if (is_product_category() && get_field('field_name') == true) 

if (is_product_category() && get_field('field_name') == true) )