ホームページ > バックエンド開発 > PHPチュートリアル > フックを使用して WooCommerce 製品の価格 (バリエーションを含む) を効果的に変更するにはどうすればよいですか?

フックを使用して WooCommerce 製品の価格 (バリエーションを含む) を効果的に変更するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-29 13:09:09
オリジナル
319 人が閲覧しました

How to Effectively Modify WooCommerce Product Prices (Including Variations) Using Hooks?

WooCommerce でフックを使用して商品価格を変更する方法 3

WooCommerce で商品価格を変更するには、特定のフックを使用する必要があります。このプロセスは単純な商品では簡単ですが、バリエーション商品には独特の課題があります。

バリエーション価格変更の課題を克服する

WooCommerce 3 のバリエーション商品では、古いフック woocommerce_get_regulator_price および woocommerce_get_price の使用は効果的ではなくなりました。それらは非推奨になっているためです。互換性を確保するには、適切なフックを利用して正しく適用することが重要です。

解決策

バリエーション価格を含むすべての製品価格を変更するには、次のフックを実装します:

プラグインのバージョン:

add_filter('woocommerce_product_get_price', 'custom_price', 99, 2);
add_filter('woocommerce_product_get_regular_price', 'custom_price', 99, 2);
// Variations 
add_filter('woocommerce_product_variation_get_regular_price', 'custom_price', 99, 2);
add_filter('woocommerce_product_variation_get_price', 'custom_price', 99, 2);

// Variable (price range)
add_filter('woocommerce_variation_prices_price', 'custom_variable_price', 99, 3);
add_filter('woocommerce_variation_prices_regular_price', 'custom_variable_price', 99, 3);
ログイン後にコピー

テーマバージョン:

add_filter('woocommerce_product_get_price', 'custom_price', 99, 2 );
add_filter('woocommerce_product_get_regular_price', 'custom_price', 99, 2 );
// Variations
add_filter('woocommerce_product_variation_get_regular_price', 'custom_price', 99, 2 );
add_filter('woocommerce_product_variation_get_price', 'custom_price', 99, 2 );
ログイン後にコピー

custom_price 関数とcustom_variable_price 関数内で、希望する価格乗数を既存の価格に適用して、希望する変更を実現します。

可変価格範囲の処理

さまざまな商品にはさまざまな価格が表示されます。 woocommerce_variation_prices_price フックと woocommerce_variation_prices_normal_price フックを使用して、この範囲を変更できます。

キャッシュされた価格の処理

WooCommerce 3 でキャッシュされた価格を処理するには、woocommerce_get_variation_prices_hash フックを利用します。このフックにより、トランジェントを削除せずに効率的に価格を更新できます。

追加の考慮事項

ウィジェットを使用してフィルタリングされた商品価格については、次のオプションを利用します。フック:

  • woocommerce_price_filter_widget_min_amount
  • woocommerce_price_filter_widget_max_amount

以上がフックを使用して WooCommerce 製品の価格 (バリエーションを含む) を効果的に変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート