Я хочу использовать пользовательский тип сообщения в своем пользовательском SQL-запросе, но, когда я добавляю пользовательский тип сообщения im мой запрос, я не получаю никаких результатов.
Где мой вопрос?
Это код, который я пробовал
$top5_ov_performance = $wpdb->get_results("SELECT post_id,meta_value FROM ".$wpdb->prefix."postmeta WHERE meta_key = 'sd_top5_overclocing' AND (post_type = 'cpu') ORDER BY meta_value DESC LIMIT 0,5 ");
Я также пробовал это post_type = 'cpu'
вместо (post_type = 'cpu')
and
вместо AND
Если вы пытаетесь получить все метазначения для ключа в определенном типе сообщения, вы можете сделать что-то подобное в одном запросе:
SELECT post_id, meta_value FROM $wpdb->postmeta pm, $wpdb->posts p WHERE meta_key = 'sd_rating' and pm.post_id = p.ID AND p.post_type = 'cpu'
Я нашел способ:
global $wpdb,$post; $query_ids = $wpdb->get_results("SELECT ID FROM ".$wpdb->prefix."posts WHERE (post_type = 'cpu') LIMIT 0,10"); foreach ($query_ids as $query_id) { $query = $wpdb->get_results("SELECT * FROM ".$wpdb->prefix."postmeta WHERE post_id = ".$query_id->ID." AND meta_key = 'sd_rating' ORDER BY meta_value LIMIT 0,10"); foreach ($query as $value) { echo $value->meta_value; } }