wordpress 我已经为woocommerce产品类别创建了一个acf中继器,现在我如何在特定的页面中显示中继器数据?

t0ybt7op  于 2022-11-02  发布在  WordPress
关注(0)|答案(1)|浏览(173)
<?php $queried_object = get_queried_object(); ?>
<?php if(have_rows('category_image',$queried_object->term_id)):?>

 <?php while(have_rows('category_image',$queried_object->term_id)):
             the_row();
            $gallery_image=get_sub_field('image');

           echo $gallery_image['url'];

           ?>

 <p><?php echo the_sub_field('description');?></p>

<a href="<?php echo $gallery_image['url']; ?>" data-lg-size="1024-800">
        <img alt="img2" src="<?php echo $gallery_image['url']; ?>" />
    </a> 

<?php endwhile;?>

</div>
<?php else: ?>
<h6 class="text-center">No thing found from the backend </h6>
<?php endif;?>

上面是我的代码,它显示了else部分,只有我从后端插入了数据

pjngdqdw

pjngdqdw1#

为分类法获取ACF字段值与普通post略有不同。在post中,您可以直接传递ID,这样就可以正常工作。但对于分类法,您还需要传递分类法slug,如product_cat_1234。因此,在您的示例中,在have_rows()中,您需要传递'product_cat_'. $queried_object->term_id而不是$queried_object->term_id
参考:https://www.advancedcustomfields.com/resources/get_field/#get-a-value-from-different-objects

相关问题