Как отобразить цену товара в цикле WooCommerce
Мой общий вопрос: как отобразить цену товара в WooCommerce для продукта в цикле, а не цену того товара, на странице которого мы находимся? Другими словами, я хочу отобразить несколько связанных товаров в сетке на странице отдельного товара, но когда я использую этот код:
<?php
$product = new WC_Product(get_the_ID());
echo wc_price($product->get_price_including_tax(1,$product->get_price()));
?>
он отображает цену основного товара на странице для каждого отдельного товара в моей сетке - цену того товара, на странице которого мы находимся, а не цену каждого товара в сетке, если это понятно... То есть, если цена товара на отдельной странице составляет £9.00, каждый товар в сетке связанных товаров будет отображаться с ценой £9.00, вместо своей собственной цены...
Я использую поле отношений ACF для выбора товаров на странице.
Вот весь мой код, включая поле отношений ACF:
<?php
$posts = get_field('related_set_1');
if( $posts ): ?>
<?php foreach( $posts as $p): ?>
<li>
<a href="<?php echo get_permalink( $p->ID ); ?>">
<?php
echo get_the_post_thumbnail( $p->ID, '175x100' )
?>
<div style="overflow:hidden">
<h4><?php echo $p->post_title; ?></h4>
<p class="price">
<?php
global $post;
$product = new WC_Product($post->ID);
echo wc_price($product->get_price_including_tax(1,$product->get_price()));
?>
</p>
<p class="link">Посмотреть</p>
</div>
</a>
</li>
<?php endforeach; ?>
<?php endif; ?>
И я использую это в functions.php в функции фильтра, если это имеет какое-то значение?
add_filter( 'woocommerce_after_single_product_summary', 'custom_related_products' );
function custom_related_products() { ?>
.... (код выше здесь)
<php? }
Поскольку я отображаю это на странице другого товара, мне пришлось использовать
get_the_post_thumbnail( $p->ID, '175x100' )
вместо
the_thumbnail
так как иначе у меня была та же проблема, и теперь все работает хорошо, кроме цены.
Есть ли способ получить цену по ID
или чему-то еще
?

Пример
<?php
global $woocommerce;
// Получаем символ валюты
$currency = get_woocommerce_currency_symbol();
// Получаем обычную цену товара
$price = get_post_meta( get_the_ID(), '_regular_price', true);
// Получаем цену со скидкой
$sale = get_post_meta( get_the_ID(), '_sale_price', true);
?>
<?php if($sale) : ?>
<p class="product-price-tickr"><del><?php echo $currency; echo $price; ?></del> <?php echo $currency; echo $sale; ?></p>
<?php elseif($price) : ?>
<p class="product-price-tickr"><?php echo $currency; echo $price; ?></p>
<?php endif; ?>
взято из https://gist.github.com/aarifhsn/d0535a720d13369010ce

global $post;
$product = new WC_Product( $post->ID );
echo $product->get_price_html();
Этот код вернет правильную цену для простых и вариативных товаров, а также должен возвращать текущие активные цены (обычную / акционную).
Редактирование: ссылка - https://woocommerce.github.io/code-reference/classes/WC-Product.html#method_get_price_html
