Отображение цены продукта в цикле WP_Query в Woocommerce

У меня есть этот код для отображения продуктов из категории, и я хотел бы также отображать его цену. Есть идеи, что я могу добавить или изменить? В приведенном ниже коде ничего не отображается (также нет ошибок).

<?php

$product_categories = array('cat-name');

$wc_query = new WP_Query( array(
    'post_type' => 'product',
    'post_status' => 'publish',
    'posts_per_page' => 10,
    'tax_query' => array( array(
        'taxonomy' => 'product_cat',
        'field'    => 'slug',
        'terms'    => $product_categories,
        'operator' => 'IN',
    ) )
) );
?>
<h1 style = "margin-top:30px;">Cat Name</h1>
<div class = "changing-img">
     <?php if ($wc_query->have_posts()) : ?>
     <?php while ($wc_query->have_posts()) :
                $wc_query->the_post(); ?>
<a href = "<?php the_permalink(); ?>">
          <?php the_post_thumbnail('full'); ?>
          <?php the_post_thumbnail('full'); ?>
          <h6><?php the_title(); ?> </h6>
          <p><?php echo $wc_query->get_price_html(get_the_ID()); ?></p>
</a>
     <?php endwhile; ?>
     <?php wp_reset_postdata(); ?>
     <?php else:  ?>
     <li>
          <?php _e( 'No products' ); ?>
     </li>
     <?php endif; ?>
</div>

Кроме того, если это возможно, я хотел бы вытащить первое изображение из галереи woocommerce (а не эскиз). Большое спасибо.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
7
0
15 335
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Обновление за август 2020 г.

Вам нужно будет заменить строку:

<p><?php echo $wc_query->get_price_html(get_the_ID()); ?></p>

Следующими строками:

<?php $price = get_post_meta( get_the_ID(), '_price', true ); ?>
<p><?php echo wc_price( $price ); ?></p>

Или этим способом намного лучше(который выведет правильную отформатированную цену для отображения):

<?php $product = wc_get_product( get_the_ID() ); /* get the WC_Product Object */ ?>
<p><?php echo $product->get_price_html(); ?></p>

Что мне делать, если я хочу получить обычную цену и цену со скидкой. Спасибо

Shahid Khattak 19.01.2019 13:39

@ShahidKhattak Используйте get_post_meta( get_the_ID(), '_regular_price', true ); и get_post_meta( get_the_ID(), '_sale_price', true );

LoicTheAztec 19.01.2019 13:51

Другие вопросы по теме