代码之家  ›  专栏  ›  技术社区  ›  ST80

Wordpress Woocommerce高级自定义字段True/False始终返回NULL

  •  0
  • ST80  · 技术社区  · 7 年前

    advanced-custom-field true/false . 目的是展示我的商业商店的一些产品。由于某种原因,结果总是 NULL

    以下是我尝试的:

    if ( woocommerce_product_loop() ) {
    
    woocommerce_product_loop_start();
    
    if ( wc_get_loop_prop( 'total' ) ) {
        while ( have_posts() ) {
            the_post();
    
            do_action( 'woocommerce_shop_loop' );
    
            wc_get_template_part( 'content', 'product' );
        }
    }
    if(get_field('show_tab')) : ?>
    <li class="extra">';
       ...show some stuff
    </li>
    <?php endif;
    echo '</ul>';
    
    } else {
    
      do_action( 'woocommerce_no_products_found' );
    }
    

    如上所述,真/假字段总是返回 无效的

    有人能帮我吗

    2 回复  |  直到 7 年前
        1
  •  0
  •   Andrej    7 年前

    你的 get_field('show_tab')

        2
  •  0
  •   Peter HvD    7 年前

    您正在使用 get_field() 在循环之外,因此还需要为其提供试图从中获取字段的post的ID,如下所示:

    if(get_field('show_tab', $post_id)) : ?>

    话虽如此,您的代码看起来有点混乱,所以我假设您的本意是让它在循环中。如果是这样的话,那就把这些都调高,也许在 do_action( 'woocommerce_shop_loop' );