【发布时间】:2016-04-22 14:08:45
【问题描述】:
我正在尝试修改帖子类型“产品”的所有查询,以仅显示产品/帖子是否具有“wholesale_price”的某个元键,元值需要大于 0。
这是我所拥有的:
add_action( 'pre_get_posts', 'rc_modify_query_get_design_projects' );
function rc_modify_query_get_design_projects( $query ) {
if($query->is_main_query() && $query->query_vars['post_type'] == 'product' ) {
$query->set('meta_key', 'wholesale_price');
$query->set('meta_compare', '>');
$query->set('meta_value', '0');
}
}
由于某种原因,这仍然返回所有内容。这是正确的做事方式吗?
【问题讨论】:
-
我认为你最后只是缺少
return $query;。 -
我刚刚添加了这个,但仍然返回所有内容。
-
好吧,那就试试这个:
$query->set( 'meta_query', array( array( 'key' => 'wholesale_price', 'value' => 0, 'compare' => '>', 'type' => 'numeric' ) ));而不是你的:$query->set('meta_key', 'wholesale_price'); $query->set('meta_compare', '>'); $query->set('meta_value', '0');
标签: wordpress