mipfikus
@mipfikus
Вообще я не знаю, но

Как поменять порядок вывода товаров по умолчанию?

Сейчас woocommerce выводит товары по цене от маленькой к большой, а нужно выводить их по значению атрибута "diametr"(число) в порядке возрастания.
В интернете нашел такой кусочек кода, но как его нужно обернуть чтобы он менял порядок моих товаров?

$args['order'] = 'ASC';
$args['meta_key'] = 'diametr';
$args['orderby'] = 'meta_value_num';

Спасибо
  • Вопрос задан
  • 167 просмотров
Решения вопроса 1
В интернете нашел такой кусочек кода, но как его нужно обернуть чтобы он менял порядок моих товаров?
Ответ НИКАК. Потому, что это модуль управления сортировкой по метаполям, у а Вас требуется по значению атрибута.

Как вариант, Вам нужно написать блок кода который будет транслировать Ваши атрибуты в метаполя и уже после делать сортировку используя Ваш кусочек кода. Задача не тривиальная, но решаемая.
Вот примерный алгоритм
  • Для каждого значения атрибута(термина в таблице wp_terms) добавить метаполе (в таблицу метаполей терминов) со значением порядка сортировки (0,1,2,3,...)
  • Подключится к хуку сохранения товара и считать значение метаполя атрибута для сохраняемого товара
  • Сохраниить это значение в метаполе товара
  • Сделать сортировку по метаполю


Ну как то так.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы