有人可以分享 PHP 代码来使用 WP_Query 检索 ACF 字段值吗?以下内容检索字段值,但我想使用 WP_Query 来完成此操作,以便它可以用作元查询:
<?php $field = get_field_object('field_64fa6f6063934'); ?> <?php echo $field['value']; ?>
我也尝试过
<?php $field = get_field_object('field_64fd4d406393c'); echo $field['value']; ?>
谢谢你
要使用 WP_Query 检索 ACF 字段值,您可以使用
meta_query
函数中的 WP_Query
参数。下面是一个示例代码片段,它使用字段键 field_64fa6f6063934
检索 ACF 字段的值:
$args = array(
'post_type' => 'post',
'meta_query' => array(
array(
'key' => 'field_64fa6f6063934',
'compare' => 'EXISTS',
),
),
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
$field_value = get_field( 'field_64fa6f6063934' );
// Do something with the field value
}
wp_reset_postdata();
}
在此示例中,我们正在查询类型为
post
的帖子,其 ACF 字段的值带有键 field_64fa6f6063934
。 compare
参数设置为 EXISTS
以确保我们仅检索具有该字段值的帖子。
在循环内,我们使用
get_field()
函数来检索当前帖子的字段值。您可以将 field_64fa6f6063934
替换为您要检索的 ACF 字段的键。
注意,循环后需要调用
wp_reset_postdata()
将全局post数据恢复到原始状态。