[WordPress] WooCommerce オプション商品ページに1つの価格のみを表示する方法

Last Updated: 2023 年 09 月 06 日 2のコメント

WordPress WooCommerce ショッピングモールでオプション商品を設定すると、商品価格が最低価格と最高価格の範囲で表示されます。 商品ページにXNUMXつの価格のみを表示したい場合は、以下の方法を利用できます。

以下のコードはうまくいくようですが、この記事が書かれてから古いため、最新のWooCommerceバージョンでは動作しない可能性があります。 次の記事では、最新バージョンで動作するコードを確認できます。

WooCommerce オプション商品ページに1つの価格のみを表示する方法

WooCommerceでオプション商品を設定する場合は、商品の価格が、次の図のように価格帯(例えば、900,000ウォン〜1,000,000ウォン)で表示されます。

Variable Price range

しかし、一つの価格のみを表示するようにしたい場合があります。 このような場合は、次のコードを使用するようにします。

// WC 2.0オプションの価格フォーマットを使用します。 割引は最小値として表示されますadd_filter( 'woocommerce_variable_sale_price_html'、 'wc_wc20_variation_price_format'、10、2); add_filter( 'woocommerce_variable_price_html'、 'wc_wc20_variation_price_format'、10、2); function wc_wc20_variation_price_format( $price, $product ) { // Main Price $prices = array( $product->get_variation_price( 'min', true ), $product->get_variation_price( 'max', true ) ); $price = $prices[0] !== $prices[1] ? sprintf( __( '割引: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] ); // Sale Price $prices = array( $product->get_variation_regular_price( 'min', true ), $product->get_variation_regular_price( 'max', true ) ); sort( $prices ); $saleprice = $prices[0] !== $prices[1] ? sprintf( __( '割引: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] ); if ( $price !== $saleprice ) { $price = ' '。 $saleprice 。 ' '。 $price 。 ' '; } return $price; } // Source: stackoverflowの

上記のコードを使用している WordPress テーマの関数ファイル(のfunctions.php)に追加するようにします。 これにより、次の図のように価格が表示されます。 (上記のコードをテーマ関数ファイルに追加する方法は、 この記事を参照してください。)

Variable Price  -  only one

オプション価格の範囲を完全に取り除くには、次のコードを使用することができます。

add_filter( 'woocommerce_variable_sale_price_html'、 'bbloomer_remove_variation_price'、10、2); add_filter( 'woocommerce_variable_price_html'、 'bbloomer_remove_variation_price'、10、2); function bbloomer_remove_variation_price( $price ) { $price = ''; return $price; } // Source: businessbloomer.com

これにより、すべての場所でのオプション商品の範囲が表示されません。

最低価格のみを表示するには、次のコードをユーザー関数ファイルに追加してください。

function custom_variation_price( $price, $product ) { $price = ''; if ( ! $product->min_variation_price || $product->min_variation_price !== $product->max_variation_price ) { $price .= woocommerce_price( $product->get_price() ); } return $price; } add_filter( 'woocommerce_variable_price_html'、 'custom_variation_price'、10、2); // Source: support.woothemes.com

最小価格または最高価格だけを表示する方法は、 この記事を参照してみてください。 (参考までにリンクされた記事のコードを使用してみるとうまくいかない場合もあるようです。)

オプション商品の整理方法は「WooCommerce オプション商品を設定する「記事を参考にしてください。オプション商品を精巧に整理したい場合 WooCommerce Extra Product Optionsプラグインを使用することができます(参照).

参照


2のコメント

コメント