我使用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) )