Wordpress WP_Query заказ по множественным мета-терминам - PullRequest
0 голосов
/ 10 октября 2018

В моем интернет-магазине есть товары с длиной, шириной, высотой.Я делаю функцию, которая должна будет делать продукты больше и меньше.Однако мне нужны следующие критерии:

Длина> Текущая длина продукта
Ширина> Текущая ширина продукта
Высота> Текущая высота продукта

Значения будут получены изтекущий загруженный продукт, который будет использоваться для сравнения.(Я использовал значения примеров, чтобы показать свои результаты)

У меня есть следующий запрос:

$cc_args = array(
'post_type'         => 'product',
'post_status'       => 'published',
'posts_per_page'    => -1,
'tax_query'         => array(
    array(
        'taxonomy'  => 'product_cat',
        'field'     => 'term_id',
        'terms'     => 7,
        'operator'  => 'IN',
    )
),
'meta_query'        => array(
    'relation'          => 'AND',
    'length_clause'     => array(
        'key'               => 'pa_length',
        'value' => '13.56',
        'compare' => '>=',
        'type'    => 'NUMERIC',
    ),
    'width_clause'       => array(
        'key'               => 'pa_width',
        'value' => '5.76',
        'type'    => 'NUMERIC',
        'compare' => '>=',
    ),
    'height_clause'       => array(
        'key'               => 'pa_height',
        'value' => '11.70',
        'type'    => 'NUMERIC',
        'compare' => '>=',
    ),
),
'orderby' => array(
    'length_clause' => 'ASC',
    'width_clause' => 'ASC',
    'height_clause' => 'ASC',
),
);
$results = new WP_Query($cc_args);

Я получаю следующий ответ: (Жирный - это ответ, который я ищу)

По сути, эта функция должна возвращать продукты большего размера по всем трем измерениям (ASC или DESC).В противном случае продукты не будут актуальны.

0: длина: 17,10 - ширина: 7,50 - высота: 16,00
1: длина: 18,00 - ширина: 18,00 - высота: 17,50
2: длина: 19,63 - ширина: 19,63- Высота: 18,38
3: Длина: 20,56 - Ширина: 10,97 - Высота: 12,65
4: Длина: 22,06 - Ширина: 17,00 - Высота: 12,56
5: Длина: 22,06 - Ширина:17.00 - высота: 12.56
6: длина: 23.70 - ширина: 24.00 - высота: 13.90
7: длина: 24.00 - ширина: 24.00 - высота: 23.00
8: длина:28,00 - Ширина: 21,00 - Высота: 15,81
9: Длина: 29,13 - Ширина: 20,69 - Высота: 17,63
10: Длина: 30,25 - Ширина: 25,25 - Высота: 15,13
11: Длина: 34,95 -Ширина: 18,45 - Высота: 24,75
12: Длина: 34,50 - Ширина: 24,50 - Высота: 12,50
13: Длина: 40,98 - Ширина: 12,92 - Высота: 12,13
14: Длина: 42,00 - Ширина:22.00 - высота: 15.10
15: длина: 47.57 - ширина: 24.07 - высота: 18.00

Не могу найти много информации по этому типу запроса.Я знаю, что использование mysqli () легко заказать, но мне нужно использовать WP_Query ().

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...