Возможность индивидуальной числовой сортировки продуктов WooCommerce по определенным метаданным ⇐ Php
Возможность индивидуальной числовой сортировки продуктов WooCommerce по определенным метаданным
У меня возникла проблема с заказом продуктов. У каждого продукта есть метазначение «cheapest_worktop» с ЦИФРОВЫМ значением.
Я использую фильтр «woocommerce_get_catalog_ordering_args», чтобы изменить запрос так, чтобы он сортировался по метазначению:
$args["meta_key"] = "самая дешевая_рабочая поверхность"; $args["orderby"] = "meta_value_num"; $args["meta_type"] = 'DECIMAL'; $args["order"] = "ASC"; $args["meta_query"] = массив( 'отношение' => 'И', множество( 'key' => "самая дешевая_рабочая поверхность", 'compare' => 'EXISTS', // Извлекаем только те продукты, у которых существует метаключ ) ); но в конечном итоге отображаются продукты с мета-ключом и без него,
Это работает только тогда, когда я удаляю
$args["meta_key"] = "самая дешевая_рабочая поверхность"; Это скрывает продукты, у которых нет мета_ключа, но не сортирует их. Изначально это было просто
$args["meta_key"] = "самая дешевая_рабочая поверхность"; $args["orderby"] = "meta_value_num"; $args["meta_type"] = 'DECIMAL'; $args["order"] = "ASC"; Это сработало, но по какой-то причине оно просто перестало работать не на 100%, почему на сайте не произошло никаких других изменений, никаких обновлений, никаких новых плагинов или ничего кода.
Я использовал
глобальный $wp_query; echo print_r($wp_query, true); echo print_r($args, true); Чтобы дважды проверить выполнение $args и убедиться, что они верны.
Будем благодарны за любые советы.
У меня возникла проблема с заказом продуктов. У каждого продукта есть метазначение «cheapest_worktop» с ЦИФРОВЫМ значением.
Я использую фильтр «woocommerce_get_catalog_ordering_args», чтобы изменить запрос так, чтобы он сортировался по метазначению:
$args["meta_key"] = "самая дешевая_рабочая поверхность"; $args["orderby"] = "meta_value_num"; $args["meta_type"] = 'DECIMAL'; $args["order"] = "ASC"; $args["meta_query"] = массив( 'отношение' => 'И', множество( 'key' => "самая дешевая_рабочая поверхность", 'compare' => 'EXISTS', // Извлекаем только те продукты, у которых существует метаключ ) ); но в конечном итоге отображаются продукты с мета-ключом и без него,
Это работает только тогда, когда я удаляю
$args["meta_key"] = "самая дешевая_рабочая поверхность"; Это скрывает продукты, у которых нет мета_ключа, но не сортирует их. Изначально это было просто
$args["meta_key"] = "самая дешевая_рабочая поверхность"; $args["orderby"] = "meta_value_num"; $args["meta_type"] = 'DECIMAL'; $args["order"] = "ASC"; Это сработало, но по какой-то причине оно просто перестало работать не на 100%, почему на сайте не произошло никаких других изменений, никаких обновлений, никаких новых плагинов или ничего кода.
Я использовал
глобальный $wp_query; echo print_r($wp_query, true); echo print_r($args, true); Чтобы дважды проверить выполнение $args и убедиться, что они верны.
Будем благодарны за любые советы.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как я могу фильтровать продукты по метаданным в Woocommerce REST API?
Anonymous » » в форуме Android - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Отображение шорткода Woocommerce для продажи продуктов для определенной категории продуктов
Anonymous » » в форуме Php - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-