【问题标题】:WP->Query get Custom Post ID from meta_value & meta_keyWP->Query 从 meta_value 和 meta_key 获取自定义帖子 ID
【发布时间】:2017-03-31 20:05:55
【问题描述】:

我已经尝试了几个小时来完成这项工作 - 但由于某种原因,这对我来说简直太难了。我有一个自定义 post_type 'house',我想找到我的自定义 post_type 的 post_id 以及 meta_key 和某些元值。

假设我想找到一个房子的 post_id meta_key='house_id' meta_value='231sd1223'

我将如何使用 wp->query 做到这一点?

【问题讨论】:

  • 欢迎来到 Stack Overflow!您似乎在要求某人为您编写一些代码。 Stack Overflow 是一个问答网站,而不是代码编写服务。请see here学习如何写出有效的问题。

标签: php wordpress


【解决方案1】:

即使有循环,您也可以在此处进行查询。但是,查询元值会进行更多的数据库查询,请考虑循环遍历“房屋”帖子类型,而不是仅在 meta_value 等于房屋编号时才执行某些操作。

// WP_Query arguments
$args = array (
    'post_type'              => array( 'house' ),
    'post_status'            => array( 'publish' ),
    'meta_query'             => array(
        array(
            'key'       => 'house_id',
            'value'     => '231sd1223',
        ),
    ),
);

// The Query
$query = new WP_Query( $args );

// The Loop
if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();
        // do something
    }
} else {
    // no posts found
}

// Restore original Post Data
wp_reset_postdata();

【讨论】:

    【解决方案2】:
    global $wpdb;
    $results = $wpdb->get_results( "select post_id, meta_key from $wpdb->postmeta where meta_value = '231sd1223.'", ARRAY_A );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-06
      • 1970-01-01
      • 2018-02-16
      • 2014-06-27
      • 2018-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多