Title: Не работает сортировка вариаций по цене
Last modified: 04.04.2020

---

# Не работает сортировка вариаций по цене

 *  [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * (@kaktebe)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/)
 * Всем привет.
    На WP установлен Woocommerce и есть товары, у которых добавлены
   variations с ценами. У каждой вариации есть поле Regular price, по нему в каталоге
   надо сделать сортировку. Сортировка по возрастанию работает, а вот по убыванию
   вообще никак. В базе в таблице wp_options как я понял это хранится, а не в wp_postmeta.
   Там есть поле с таким JSON: `{"version":"1586002626","f9e544f77b7eac7add281ef28ca5559f":{"
   price":{"267":"20.00","269":"100.00"},"regular_price":{"267":"20.00","269":"100.00"},"
   sale_price":{"267":"20.00","269":"100.00"}},"98f9c03adb427b329f828827eb33e0bf":{"
   price":{"267":"20.00","269":"100.00"},"regular_price":{"267":"20.00","269":"100.00"},"
   sale_price":{"267":"20.00","269":"100.00"}}}` В functions.php пытался много чего
   переделать, вот например сейчас такое есть, но ничего не сортирует по ?orderby
   =price-desc.
 *     ```
       add_filter( 'woocommerce_get_catalog_ordering_args', 'custom_woocommerce_get_catalog_ordering_args' );
       function custom_woocommerce_get_catalog_ordering_args( $args ) {
       	$args['orderby'] = '_transient_wc_var_prices';
       	$args['order'] = 'desc';
   
       	return $args;
       }
       ```
   
 * Какие есть варианты исправить это?
 * Страница, с которой нужна помощь: _[[войдите](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fru.wordpress.org%2Fsupport%2Ftopic%2F%25D0%25BD%25D0%25B5-%25D1%2580%25D0%25B0%25D0%25B1%25D0%25BE%25D1%2582%25D0%25B0%25D0%25B5%25D1%2582-%25D1%2581%25D0%25BE%25D1%2580%25D1%2582%25D0%25B8%25D1%2580%25D0%25BE%25D0%25B2%25D0%25BA%25D0%25B0-%25D0%25B2%25D0%25B0%25D1%2580%25D0%25B8%25D0%25B0%25D1%2586%25D0%25B8%25D0%25B9-%25D0%25BF%25D0%25BE-%25D1%2586%25D0%25B5%2F%3Foutput_format%3Dmd&locale=ru_RU),
   чтобы увидеть ссылку]_

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

 *  Автор [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * (@kaktebe)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179521)
 * Вот functions.php [https://github.com/compplace/wpsort/blob/master/functions.php](https://github.com/compplace/wpsort/blob/master/functions.php)
 *  Модератор [Юрій](https://ru.wordpress.org/support/users/yube/)
 * (@yube)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179522)
 * > В базе в таблице wp_options как я понял это хранится, а не в wp_postmeta.
 * В wp_options хранятся транзитные кэши.
    Атрибуты (в широком смысле слова) товаров
   и их вариаций хранятся в wp_postmeta.
 *  Автор [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * (@kaktebe)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179544)
 * Искал не нашёл где в postmeta это. Как можно сортировку поправить?
 *  Модератор [Юрій](https://ru.wordpress.org/support/users/yube/)
 * (@yube)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179547)
 * > Искал не нашёл где в postmeta это.
 * where meta_key=’_regular_price’
 * > Как можно сортировку поправить?
 * Сортировку товаров по ценам их вариаций? По-простому, боюсь, никак, потому что
   получается сортировка по полю, непосредственно не связанному с сортируемыми записями
   + множественность значений.
 *  Автор [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * (@kaktebe)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179549)
 * А по сложному? Можно как-то SQL запрос получить? И почему тогда сортировки другие
   работают?
 *  Модератор [Юрій](https://ru.wordpress.org/support/users/yube/)
 * (@yube)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179554)
 * > Можно как-то SQL запрос получить?
 * Можно, получайте 🙂
 * > И почему тогда сортировки другие работают?
 * Странный вопрос. Я не знаю, какие у Вас «другие», и тем более, почему они работают.
   Может, им достаточно информации в свойствах самого товара, а может для них сделали
   какие-то субзапросы. Ставьте плагин Query Monitor и в нем смотрите, какие sql-
   запросы в каких случаях используются. Может, по аналогии получится сделать запрос/
   параметры wp_query и для того, что Вы хотите сделать. А может оно и так уже сделано,
   но что-то мешает ему правильно работать.
 *  Автор [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * (@kaktebe)
 * [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179561)
 * А где можно изменить запрос? В pre_get_posts не меняется

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

 Тема «Не работает сортировка вариаций по цене» закрыта для новых ответов.

## Метки

 * [вариации](https://ru.wordpress.org/support/topic-tag/%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b8/)
 * [сортировка](https://ru.wordpress.org/support/topic-tag/%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0/)
 * [woocommerce](https://ru.wordpress.org/support/topic-tag/woocommerce/)

 * Форум: [WooCommerce](https://ru.wordpress.org/support/forum/woocommerce/)
 * 7 ответов
 * 2 участника
 * Последний ответ: [kaktebe](https://ru.wordpress.org/support/users/kaktebe/)
 * Последняя активность: [6 лет, 6 месяцев назад](https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d0%b5%d1%82-%d1%81%d0%be%d1%80%d1%82%d0%b8%d1%80%d0%be%d0%b2%d0%ba%d0%b0-%d0%b2%d0%b0%d1%80%d0%b8%d0%b0%d1%86%d0%b8%d0%b9-%d0%bf%d0%be-%d1%86%d0%b5/#post-12179561)
 * Статус: нерешённая

## Темы

### Самые популярные темы

### Темы без ответов

### Без вопроса

### Решённые

### Нерешённые

### Все темы
