Ответы в темах

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Спасибо за совет!

    Но при помощи get_post_meta() я вижу только вариант ручной переборки всей выборки товаров. Хотя наверно это и неплохой способ.

    Решил проблему другим способом.

    Я пошел неверным путем когда использовал в построении запроса ‘relation’ => ‘OR’. Надо было просто проверять вхождение значения поля в массив ‘compare’ => ‘IN’

    Правильный код фильтрованной выборки:

    $args = array();
    if (isset($_POST['filtr_door_1'])) {
        $optionArray1 = $_POST['filtr_door_1'];
        $args[] = array('key' => 'filtr_door_1', 'value' => $optionArray1, 'compare' => 'IN');
    }
    if (isset($_POST['filtr_door_2'])) {
        $optionArray2 = $_POST['filtr_door_2'];
        $args[] = array('key' => 'filtr_door_2', 'value' => $optionArray2, 'compare' => 'IN');
    }
    if (sizeof($args)) {
        query_posts(array('paged' => $paged, 'cat' => $cat, 'meta_query' => $args));
    } else {
        query_posts(array('paged' => $paged, 'cat' => $cat));
    }

    Никто не может помочь?
    Подскаэите, как обычно решается задача: Фильтр записей по произвольным полям (поля могут добавляться админом сайта, т.е. не по фиксированным)

Просмотр 2 ответов — с 1 по 2 (всего 2)