<?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部分,只有我从后端插入了数据
1条答案
按热度按时间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