WooCommerce: как фильтровать продукты по пользовательским мета-метам и отображать их в цикле Elementor?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 WooCommerce: как фильтровать продукты по пользовательским мета-метам и отображать их в цикле Elementor?

Сообщение Anonymous »

Я создаю веб-сайт WordPress с использованием WooCommerce и Elementor и хочу отображать список продуктов в пользовательском цикле Elementor на основе настраиваемого метаполя продукта.
У меня есть настраиваемое поле Feature_color (добавленное с помощью update_post_meta) для каждого продукта. Например:
  • Продукт A → Featured_color = "red"
  • Продукт B → Featured_color = "blue"
  • Продукт C → Featured_color = "red"
Я хочу, чтобы Elementor показывать только продукты, у которых Featured_color = красный в пользовательском разделе.
Я пробовал использовать собственный запрос в файле function.php:

Код: Выделить всё

function custom_elementor_query( $query ) {
$query->set( 'meta_key', 'featured_color' );
$query->set( 'meta_value', 'red' );
}
add_action( 'elementor/query/my_custom_filter', 'custom_elementor_query' );
Частично работает, но:
  • Иногда продукты не отображаются, даже если мета-мета установлена
  • Разбивка на страницы прерывается, когда несколько продуктов совпадают
  • Не уверен, что это правильный способ фильтровать продукты WooCommerce по мета-метам в Elementor
Вопросы:
  • Как правильно фильтровать продукты WooCommerce по пользовательским мета-данным для цикла Elementor?
  • Как обеспечить правильную работу разбиения на страницы с пользовательским запросом?
  • Есть ли проблемы с производительностью при использовании Meta_query для многих продуктов?
Среда:
  • WordPress 6.x
  • WooCommerce 10.x
  • Elementor 3.x
  • Тема: Астра


Подробнее здесь: https://stackoverflow.com/questions/798 ... entor-loop
Ответить

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

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

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

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

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