如何查询Wordpress中的自定义字段?

时间:2013-12-19 11:21:13

标签: wordpress

我正在尝试根据自定义字段查询帖子,然后在循环中显示它们。我检查并仔细检查了我的代码与codex和其他来源,但查询仍然似乎没有工作。我做错了什么?

根据要点,我的代码如下所示:

<?php 
  $args = array(
    'meta_key' => 'my_custom_field'
  );
  $my_query = new WP_Query( $args );
?>
<?php if ( $my_query->have_posts() ) { ?>
  <p>Success, we have posts!!!</p>
<?php } else { ?>
  <p>Uh Oh, No posts!!!</p>
<?php } ?>

条件语句正在逐渐退出并返回“呃哦,没有帖子”。

我检查过postmeta表,肯定有包含meta_key _my_custom_field的帖子。我已尝试使用和不使用前导下划线查询。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

我用它来搜索自定义帖子类型“porfolio”中两个自定义日期字段之间的日期,我认为你处于类似情况:

$args = array(
                  'post_type' => 'portfolio',
                  'posts_per_page' => '10',
                  'meta_query' => array(
                                        array('key' => 'portfolio_start_date', 'value' => data_to_db2($ricerca_data), 'compare' => '<=', 'type' => 'NUMERIC'),
                                        array('key' => 'portfolio_end_date', 'value' => data_to_db2($ricerca_data), 'compare' => '>=', 'type' => 'NUMERIC')
                                        )
                  );
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
$post_count = wp_count_posts();
while ( $the_query->have_posts() ) {

// DO WHAT YOU WANT

}

}

我的建议是在$ args数组中使用meta_query