在自定义函数中显示 WooCommerce 产品价格

Display the WooCommerce product price inside a custom function

我创建了一个自定义函数来在 WooCommerce Archive/Shop 页面中显示 3 个自定义字段 (ACF) 和产品价格。

我的自定义字段显示正确,但 WooCommerce 价格显示不正确。如何在此函数中输出产品价格?

    add_action( 'woocommerce_after_shop_loop_item', 'acf_template_loop_product_meta', 20 );
function acf_template_loop_product_meta() {
    global $product;

    if ( $brand  = get_field('brand', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $brand . '</p>';
    }

    if ( $designer  = get_field('designer', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $designer . '</p>';
    }

    if ( $model  = get_field('model', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $model . '</p>';
    }
    
    if ( $price = $product->get_price(); ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $price . '</p>';
    }
}

如果有人感兴趣,这里是解决方案:

   add_action( 'woocommerce_after_shop_loop_item', 'acf_template_loop_product_meta', 20 );
function acf_template_loop_product_meta() {
    global $product;

    if ( $brand  = get_field('brand', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $brand . '</p>';
    }

    if ( $designer  = get_field('designer', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $designer . '</p>';
    }

    if ( $model  = get_field('model', $product->get_id()) ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . $model . '</p>';
    }
    
    if ( $price = $product->get_price() ) {
        echo '<p><strong>'. __("&nbsp;&nbsp;&nbsp;&nbsp") . '</strong> ' . ฿ $price . '</p>';
    }
}