首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有订单的定制邮政类型的WordPress meta_query

具有订单的定制邮政类型的WordPress meta_query
EN

Stack Overflow用户
提问于 2016-01-03 15:50:29
回答 2查看 5.7K关注 0票数 1

我正在尝试整理自定义Post类型的WordPress查询,但我无法使它工作。

post类型为events高级自定义域字段sticky (是/否)用于排序(顶部粘贴),另一个ACF字段glamrock (是/否)用于排除某些帖子。

结果是,glamrock被排除在外,但是不对粘性进行排序。

如果删除meta_query,排序工作正常,但包括glamrock帖子。

代码语言:javascript
复制
$bpb_args = array(
  'numberposts'     => -1,
  'post_type'       => 'events',
  'posts_per_page'  => 100,
  'paged'           => get_query_var( 'paged', true ),
  'meta-key'        => 'sticky',
  'meta_query'      => array(
    array(
      'key'     => 'glamrock',
      'value'   => 'no',
      'compare' => 'IN',
    )
  ),
  'orderby'   => 'meta_value',
  'order'     => 'ASC',
);

$bpb_query = new WP_Query( $bpb_args );

if( $bpb_query->have_posts() ):
  while( $bpb_query->have_posts() ) : $bpb_query->the_post();
  //show post
  endwhile;
endif;

更新:

不幸的是,meta_value而不是meta_value_num没有改变任何东西。它似乎仍在按日期/时间进行排序。

高级自定义字段类型是单选按钮。

除了参数外,我还包括了循环。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-03 16:34:44

您只需要指定meta_value,因为您的meta-key不是数字的。

代码语言:javascript
复制
'orderby' => 'meta_value'
票数 2
EN

Stack Overflow用户

发布于 2016-01-06 21:26:04

@Mihai说得对:meta_value_num是主要问题。我把它改成了meta_value

下面是有效的查询/循环:

代码语言:javascript
复制
$args = array(
  'post_type'       => 'events',
  'post_status'     => 'publish',
  'posts_per_page'  => -1,
  'meta_key'        => 'sticky',
  'orderby'         => 'meta_value',
  'order'           => 'ASC',
  'meta_query'      => array(
    array(
      'key'         => 'lizenz_erteilt',
      'value'       => 'no',
      'compare'     => 'LIKE',
    ),
  )
);

$query = new WP_Query( $args );

// Loop
if( $query->have_posts() ) :
  while( $query->have_posts() ) : $query->the_post();
    //show post
  endwhile;
endif;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34578411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档