Сортируйте товары по алфавиту, если цены равны.Php

Кемеровские программисты php общаются здесь
Ответить
Гость
 Сортируйте товары по алфавиту, если цены равны.

Сообщение Гость »


По какой-то причине Woocommerce сортирует по цене, в случае равенства цен он прибегает к сортировке по идентификатору продукта, а не по алфавиту. Это действительно не интуитивно понятно для клиентов (кого волнует, когда был создан продукт? Это должно применяться только к сортировке по «новому»). Я хочу изменить сортировку по цене по умолчанию, чтобы прибегнуть к сортировке по алфавиту, если цены равны. К сожалению, мой код этого не достигает. Есть ли у кого-нибудь предложение? Спасибо.
function replace_default_sorting_option($options) { $options['custom_sort'] = 'Пользовательская сортировка'; // Замените «custom_sort» своим ключом и «Custom Sort» своей меткой unset($options['price-desc']); // Удалить опцию нисходящей цены по умолчанию вернуть $опции; } add_filter('woocommerce_catalog_orderby', 'replace_default_sorting_option'); функция custom_product_sort($query) { if (is_admin() || !$query->is_main_query()) возвращаться; if (is_shop() || is_product_category() || is_product()) { $orderby = $query->get('orderby'); if ($orderby === 'custom_sort') { $query->set('orderby', 'meta_value_num title'); // Сортировка по цене и названию $query->set('order', 'DESC ASC'); // Цена по убыванию, заголовок по возрастанию } } } add_action('pre_get_posts', 'custom_product_sort');
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»