ACF 字段的 WP 查询过滤器不起作用
Posted
技术标签:
【中文标题】ACF 字段的 WP 查询过滤器不起作用【英文标题】:WP Query filter by ACF field don't work 【发布时间】:2018-06-29 17:58:34 【问题描述】:我遇到了由 ACF Post Object Field 过滤的 WP 查询的问题。 我必须查询由“作者”acf 字段过滤的“帖子”。 我正在使用此代码,但这不起作用
$post_type_query = new WP_Query(
array (
'post_type' => 'post',
'posts_per_page' => 3,
'meta_query' => array(
array(
'key' => 'author',
'value' => 'prova'
)
)
)
);
wordpress 上有一篇文章,作者为“prova”,但查询返回空。 我不明白为什么
谢谢
【问题讨论】:
看起来您缺少元查询的关系部分。比如'meta_query' => array('relation' => '=', array...codex.wordpress.org/Class_Reference/WP_Meta_Query 感谢您的回答。我试过 'meta_query' => array( 'relation' => '=', array( 'key' => 'author', 'value' => 'prova' ) ) 和 'meta_query' => array( array( ' key' => 'author', 'compare' => '=', 'value' => 'prova' ) ) 但还是不行 你的第二个例子应该是有效的。有时 WP_Query 可能会被插件搞砸。你碰巧安装了 relevanassi 吗?否则,我可以帮助您绕过 sql 查询 【参考方案1】:试试这个:
$postData = new WP_Query(array(
'post_type' => 'post',
'posts_per_page' => 3,
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'author',
'value' => 'prova',
'compare' => '=' // or if you want like then use 'compare' => 'LIKE'
)
)
)
);
if($postData->have_posts()):
while ($postData->have_posts()): $postData->the_post();
echo "Post Title";
the_title();
echo '<div class="entry-content">';
the_content();
echo '</div>';
endwhile;
endif;
【讨论】:
以上是关于ACF 字段的 WP 查询过滤器不起作用的主要内容,如果未能解决你的问题,请参考以下文章