web-dev-qa-db-ja.com

商品の商品価格をループで表示する方法

私の一般的な質問は、製品の価格ではなく、製品の価格をループで表示する方法です。言い換えれば、私は単一の製品ページのグリッドにいくつかの関連製品を表示したいのですが、私はこのコードを使用するとき:

<?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">View now</p>
            </div>
    </a>
</li>
<?php endforeach; ?>
    <?php endif; ?>

それが何らかの違いを生むのであれば、私はこれをfilter関数のfunctions.phpで使っていますか?

add_filter( 'woocommerce_after_single_product_summary', 'custom_related_products' );
function custom_related_products() { ?>
.... (the code above here)
<php? }

使用しなければならなかった別の製品ページに表示する

get_the_post_thumbnail( $p->ID, '175x100' )

の代わりに

the_thumbnail

そうでなければ私は同じ問題を抱えていたし、価格を除いてすべてが今うまく働きます。

IDまたはsthで価格をターゲティングする方法はありますか?

2
yennefer

<?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

0
Ostap34PHP