a13xsus
@a13xsus
Lazy developer

Как получить сумму всех товаров на страницах категорий или меток?

Есть стандартная страница, где выводятся все товары одной категории либо одной метки:

5d0e4939b1ce4785048515.png

Допустим, на этой странице 2 товара по 32 фунта. Я хочу получить их общую сумму (64 фунта). Знаю, вопрос очень простой, но я не могу найти loop, который выводит товары на этих страницах.

Как сделал я сейчас (кривовато):

1. Получаю айдишник текущей категории или метки:
$product_cat_id = $wp_query->get_queried_object()->term_id;

2. Делаю запрос в БД:
$wpdb->get_var($wpdb->prepare("SELECT sum(meta_value) FROM $wpdb->postmeta WHERE meta_key = '_auction_current_bid' AND post_id IN (SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = %s)", $product_cat_id));


Мне кажется такой способ не является корректным уже, да и скорость выполнения такого запроса явно не самая быстрая. Как этот запрос сделать через WP_Query()? Какие есть еще варианты?
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 1
mihdan
@mihdan
WordPress-евангелист, ведущий РНР - разработчик
Попробуйте воспользоваться хуком woocommerce_before_shop_loop
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы