从wp_usermeta表中获取用户ID

时间:2015-04-01 08:07:33

标签: php wordpress

我已将某些术语ID存储在wp_usermeta表中。 我想获得术语id与用户元键'location'值匹配的用户ID。 我已经尝试过以下查询,但它什么也没做。

global $wpdb;
    $term = get_queried_object();
    $query = $wpdb->get_results("SELECT user_id FROM wp_usermeta WHERE meta_key='location' AND meta_value LIKE %s",'%'.$term->term_id.'%');

enter image description here

3 个答案:

答案 0 :(得分:1)

试试这个,你没有正确传递值

$query = $wpdb->get_results("SELECT user_id FROM wp_usermeta WHERE
meta_key='location' AND meta_value LIKE '%s,%".$term->term_id."%'");

答案 1 :(得分:0)

使用SQL查询有什么理由吗?我认为这将完全符合您的要求:

$user_query = new WP_User_Query( array( 'meta_key' => 'location', 'meta_value' => 'ANY' ) );

foreach ($user_query as $user) {
    $user->ID; // the the user id
}

答案 2 :(得分:0)

我已经弄清楚了。这是我的解决方案。如果有人需要。

$term = get_queried_object();
    $wpdb->get_results($wpdb->prepare("SELECT user_id FROM $wpdb->usermeta WHERE meta_key='location' AND $wpdb->usermeta.meta_value LIKE %s", '%' . $term->term_id . '%'));