• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Решено Сортировка товаров в заказе.

krescigo

Новичок
Добрый день! Подскажите, возможно ли задать свою сортировку товаров в заказе. Сейчас они там располагаются в порядке добавления их покупателем в корзину. А нужно, чтобы была сортировка в алфавитном порядке по категории, а затем в алфавитном порядке по наименованию. Спасибо!
 

Blaze

Форумчанин
Сортировка по категориям в заказе ? Во время заказа выводятся только сами продукты. Вы хотите вывести и категории в поле для оформления заказа ?

А по поводу сортировки по алфавиту самих продуктов, можете почитать эту статью

Добавляете следующий код в function.php вашей темы (перед любыми изменениями в данном файле, обязательно делайте его бекап):

PHP:
/*
 * Фильтрует $order->get_items() по алфавиту все продукты в заказе по параметру
 * "Название продукта"
 */
add_filter( 'woocommerce_order_get_items', function( $items, $order ) {
 
  uasort( $items,
          function( $a, $b ) {
            return strnatcmp( $a['name'], $b['name'] );
          }
        );
 
  return $items;
 
}, 10, 2 );
 

krescigo

Новичок
Сортировка по категориям в заказе ? Во время заказа выводятся только сами продукты. Вы хотите вывести и категории в поле для оформления заказа ?

А по поводу сортировки по алфавиту самих продуктов, можете почитать эту статью

Добавляете следующий код в function.php вашей темы (перед любыми изменениями в данном файле, обязательно делайте его бекап):

PHP:
/*
 * Фильтрует $order->get_items() по алфавиту все продукты в заказе по параметру
 * "Название продукта"
 */
add_filter( 'woocommerce_order_get_items', function( $items, $order ) {
 
  uasort( $items,
          function( $a, $b ) {
            return strnatcmp( $a['name'], $b['name'] );
          }
        );
 
  return $items;
 
}, 10, 2 );
Спасибо, все работает :)
 
Сверху Снизу