Я хочу запустить один sql-запрос, подобный этому в wordpress. Просто хотел знать, есть ли простой способ сделать это в wp. Благодарю.
Возможно, этот запрос возможен с использованием query_posts?
select p1.meta_value as
avg
,p2.meta_value as total,p1.meta_value*p2.meta_value as product from wp_postmeta as p1, wp_postmeta as p2 where p1.meta_key = 'crfp-average-rating' and p2.meta_key = 'crfp-total-ratings' and p1.post_id = p2.post_id;
Поскольку у меня недостаточно комментариев для комментариев, я просто сделаю это ответом.
На что вы пытаетесь использовать эти запросы? Возможно, гораздо проще использовать встроенные функции wordpress. Если вы непреклонны, я не могу сказать многого, чтобы сделать это намного проще в wordpress, но вы можете попробовать использовать фреймворк PHP для MySQL, например, medoo . Эта структура помогла мне сократить много времени на разработку PHP до MySQL, но вам потребуется настроить другой файл с доступом к вашей базе данных WordPress! (Вы могли бы использовать комбинацию из двух) Удачи!
Я бы не сказал, что это «легко», но любые сложные запросы, подобные тем, которые у вас есть, не могут обрабатываться через API, WP_Query
или его фильтры, должны использовать класс wpdb .
global $wpdb; $rows = $wpdb->get_results( " SELECT p1.meta_value as avg, p2.meta_value as total, p1.meta_value * p2.meta_value as product FROM $wpdb->postmeta as p1, $wpdb->postmeta as p2 WHERE p1.meta_key = 'crfp-average-rating' AND p2.meta_key = 'crfp-total-ratings' AND p1.post_id = p2.post_id " ); foreach( $rows as $row ){ print_r( $row ); }