Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich Produktpreise in WooCommerce 3 mithilfe von Hooks effizient ändern?

Wie kann ich Produktpreise in WooCommerce 3 mithilfe von Hooks effizient ändern?

Barbara Streisand
Freigeben: 2024-11-28 08:38:11
Original
400 Leute haben es durchsucht

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

Produktpreise mithilfe von Hooks in WooCommerce 3 ändern

WooCommerce 3 führte verbesserte Optionen für die Manipulation von Produktpreisen mithilfe von Hooks ein, einschließlich derjenigen für Variationspreise. Die von Ihnen versuchten Hooks sind jedoch möglicherweise nicht geeignet.

Die empfohlenen Hooks zur Kontrolle der Produktpreise sind:

  • Einfach, gruppiert und extern Produkte:

    • woocommerce_product_get_price
    • woocommerce_product_get_regular_price
  • Variationen:

    • woocommerce_product_variation_get_regular_price
    • woocommerce_product_variation_get_price
  • Variable (Preis Bereich):

    • woocommerce_variation_prices_price
    • woocommerce_ Variation_prices_regular_price
  • Verkäufe:

    • wooco mmerce_product_get_sale_price
    • woocommerce_variation_prices_sale_price
    • woocommerce_product_variation_get_sale_price

Für Bei Variationspreisen müssen Sie auch zwischengespeicherte Preise verwalten. Der Filter woocommerce_get_variation_prices_hash ist für diesen Zweck effizient.

Um Variationen effektiver zu handhaben, sollten Sie die Plugin-Version des unten bereitgestellten Codes in Betracht ziehen. Es enthält eine Konstruktorfunktion und verwaltet das Preis-Caching.

// 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();
Nach dem Login kopieren

Fügen Sie zur Verwendung des Themes den folgenden Code in Ihre Datei „functions.php“ ein:

// Theme Version
// ...functionality as described in the original answer...
Nach dem Login kopieren

Denken Sie an die Verwendung von Display-HTML Haken werden die Produktpreise nicht effektiv verändern. Berücksichtigen Sie außerdem die Hooks zum Filtern von Produktpreisen in Widgets, die das Festlegen von Mindest- und Höchstpreisen ermöglichen.

Das obige ist der detaillierte Inhalt vonWie kann ich Produktpreise in WooCommerce 3 mithilfe von Hooks effizient ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage