>백엔드 개발 >PHP 튜토리얼 >후크를 사용하여 WooCommerce 3에서 제품 가격을 효율적으로 변경하려면 어떻게 해야 합니까?

후크를 사용하여 WooCommerce 3에서 제품 가격을 효율적으로 변경하려면 어떻게 해야 합니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-28 08:38:11394검색

How Can I Efficiently Change Product Prices in WooCommerce 3  Using Hooks?

WooCommerce 3에서 후크를 사용하여 제품 가격 변경

WooCommerce 3에서는 변형 가격 옵션을 포함하여 후크를 사용하여 제품 가격을 조작하는 향상된 옵션을 도입했습니다. 그러나 시도한 후크가 적절하지 않을 수 있습니다.

상품 가격 관리에 권장되는 후크는

  • 단순, 그룹화 및 외부입니다. 제품:

    • wooCommerce_product_get_price
    • wooCommerce_product_get_regular_price
  • 변형:

    • wooCommerce_product_variation_get_regular_price
    • wooCommerce_product_variation_get_price
  • 변수 (가격 범위):

    • woocommerce_variation_prices_price
    • woocommerce_ Variation_prices_regular_price
  • 판매량:

    • wooco mmerce_product_get_sale_price
    • woocommerce_variation_prices_sale_price
    • woocommerce_product_variation_get_sale_price

의 경우 변형 가격이 있는 경우 캐시된 가격도 관리해야 합니다. 이 목적에는 woocommerce_get_variation_prices_hash 필터가 효율적입니다.

변이를 보다 효과적으로 처리하려면 아래 제공된 코드의 플러그인 버전을 고려하세요. 여기에는 생성자 함수가 포함되어 있으며 가격 캐싱을 처리합니다.

// Plugin Version
class MyPlugin {
    public function __construct() {
        // Simple, grouped, and external products
        add_filter('woocommerce_product_get_price', array($this, 'custom_price'), 99, 2);
        add_filter('woocommerce_product_get_regular_price', array($this, 'custom_price'), 99, 2);
        // Variations
        add_filter('woocommerce_product_variation_get_regular_price', array($this, 'custom_price'), 99, 2);
        add_filter('woocommerce_product_variation_get_price', array($this, 'custom_price'), 99, 2);
        // Variable (price range)
        add_filter('woocommerce_variation_prices_price', array($this, 'custom_variable_price'), 99, 3);
        add_filter('woocommerce_variation_prices_regular_price', array($this, 'custom_variable_price'), 99, 3);
        // Handling price caching
        add_filter('woocommerce_get_variation_prices_hash', array($this, 'add_price_multiplier_to_variation_prices_hash'), 99, 3);
    }
    // ...functionality as described in the original answer...
}
new MyPlugin();

테마를 사용하려면 function.php 파일에 다음 코드를 배치하세요.

// Theme Version
// ...functionality as described in the original answer...

디스플레이 HTML 사용을 기억하세요. 후크는 제품 가격을 효과적으로 변경하지 않습니다. 또한 최소 및 최대 가격을 설정할 수 있는 위젯의 제품 가격 필터링 후크를 고려해보세요.

위 내용은 후크를 사용하여 WooCommerce 3에서 제품 가격을 효율적으로 변경하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.