Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Решено Количество товаров на странице с фильтром

Тема в разделе "Вопросы, советы и доработки.", создана пользователем Igorsrt, 20 апр 2016.

  1. Igorsrt

    Igorsrt

    Сообщения:
    45
    Симпатии:
    2
    Баллы:
    8
    Здравствуйте!
    Количество отображаемых товаров можно изменить с помощью плагинов или кода в файле functions.php - это понятно... и это у меня работает...
    Но на страницах, созданных с помощью шорткода фильтра по цене [woo_filter_price from="1000" to="3000"] - по прежнему отображается по 10 товаров...
    [woo_filter_price from="1000" to="3000" per_page="90"] - тоже не помогает... ((
    И в гугле ответа не нашел.
    Помогите пожалуйста.
     
  2. Igorsrt

    Igorsrt

    Сообщения:
    45
    Симпатии:
    2
    Баллы:
    8
    Этот шорткод, похоже, какой-то самописный - и я не могу сообразить, что нужно сделать...
    /* Фильтр товаров по диопазону цен */
    function woo_filter_price($atts){
    extract(shortcode_atts(array(
    'from' => '',
    'to' => '',
    'per_page' => '-1',
    'tpl' => 'woocommerce/content-product'
    ), $atts));

    if(empty($from) || empty($to)) return;

    $args = array (
    'post_type' => array( 'product' ),
    'post_status' => array( 'published' ),
    'meta_query' => array(
    array(
    'key' => '_price',
    'value' => array($from,$to),
    'compare' => 'BETWEEN',
    'type' => 'NUMERIC',
    ),
    ),
    );

    $query = new WP_Query( $args );

    if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
    $query->the_post();
    get_template_part($tpl);
    }
    } else {
    //echo 'no posts found';
    }

    wp_reset_postdata();
    }
    add_shortcode('woo_filter_price', 'woo_filter_price');
     
  3. Igorsrt

    Igorsrt

    Сообщения:
    45
    Симпатии:
    2
    Баллы:
    8
    вроде разобрался... добавил в функцию 'posts_per_page' => '100',