Woocommerce-Hook für Variationspreis

Lesezeit: 3 Minuten

Ich versuche, den Produktpreis mit Hooks zu ändern, und habe es erfolgreich geschafft, dies für normale Produkte zu tun, indem ich Folgendes verwende:

function filter_woocommerce_get_price() { 
    return 55; 
}; 
add_filter( 'woocommerce_get_price', 'filter_woocommerce_get_price', 10, 3 );

Mir ist aufgefallen, dass dieser Haken nicht für Variationsprodukte gilt, also habe ich Äquivalent gefunden:

function filter_woocommerce_get_variation_price() {
    return 66; 
};
add_filter( 'woocommerce_get_variation_price_html', 'filter_woocommerce_get_variation_price', 10, 3 );

Aber es wird einfach nicht funktionieren … Ich habe auch Folgendes versucht:

add_filter( 'woocommerce_variation_sale_price_html', 'my_html', 10, 2);
add_filter( 'woocommerce_variation_price_html', 'my_html', 10, 2);
function my_html( $price, $variation ) {
    return woocommerce_price(5);
}

Und ähnliche Lösungen, die ich online gefunden habe, aber nichts hat meinen Variationsproduktpreis geändert.

Was mache ich falsch? Kann mir bitte jemand dabei helfen, ich bin hier ziemlich verzweifelt?

  • Ich werde etwas später versuchen, etwas Praktisches und Erprobtes zu finden, da ich gerade ein wenig beschäftigt bin. Variable Produktpreise und Variationspreise sind wirklich viel komplizierter als alle anderen Produkttypen… Helgathewikinger Der Benutzer ist hier in SO der Experte für diese Art von Fragen.

    – LoicTheAztec

    24. Juli 2016 um 15:56 Uhr


  • Danke, dass Sie sich das angesehen haben. Was ich mit regulären Preisen mache, ist, sie mit einem benutzerdefinierten Feldwert zu ändern, wenn eine bestimmte Benutzerrolle angemeldet ist. Dasselbe, was ich brauche, sind Variationsproduktpreise. Ich weiß, dass Variationen eine Reihe von Preisen haben können, daher ist es schwierig, dasselbe zu tun, aber in meinem Fall bleibt der Preis gleich, wenn ein Produkt in verschiedenen Farben erhältlich ist, sodass Sie nur denselben benutzerdefinierten Feldwert anstelle des Variationspreises abrufen müssen . Dies ist der Link zur Entwicklerseite: bajko.webdotagency.com aber es ist auf Serbisch … Nochmals vielen Dank

    – Nikola Topalović

    24. Juli 2016 um 17:59 Uhr

  • Danke für diese wichtigen Details (Kein Zweifel, dass Topalovic Serbe war 🙂 …) — Wenn Sie es nicht wissen (und wollen), können Sie einige alte, unnütze Kommentare löschen, indem Sie auf das kleine graue Kreuzsymbol klicken, wenn Sie darüber schweben…

    – LoicTheAztec

    24. Juli 2016 um 18:04 Uhr


  • Wird gemacht, wenn es voll wird … hoffe, das ist kein subtiler Vorschlag, weil ich etwas Unangemessenes geschrieben habe 🙂 Ich weiß es wirklich zu schätzen, dass Sie sich die Zeit nehmen, es sich anzusehen, wenn Sie die Gelegenheit dazu haben.

    – Nikola Topalović

    25. Juli 2016 um 7:16 Uhr


Benutzer-Avatar
Skatox

Ihr Problem ist, dass Sie die erforderlichen Argumente für Ihre Funktion, die Zahl, nicht definieren 3 füge das Ende hinzu add_filters bedeutet, dass Sie 3 Argumente übergeben, also müssen Sie es so machen:

function filter_woocommerce_get_variation_price($price, $product) { 
    return 66; 
}; 
add_filter( 'woocommerce_get_variation_price', 'filter_woocommerce_get_variation_price', 10, 2 );

Die Funktion kann also aufgerufen werden.

  • Hallo, danke für eine Antwort, aber Sie haben einen Haken für woocommerce_get_price gepostet, das habe ich geschafft, mit und ohne Argumente zu arbeiten. Es ist der woocommerce_get_variation_price, mit dem ich Probleme habe. Ich habe versucht, diesem Haken auch Argumente hinzuzufügen, aber immer noch kein Glück.

    – Nikola Topalović

    24. Juli 2016 um 14:18 Uhr

  • Hallo, ich habe die Antwort zur Verwendung aktualisiert woocommerce_get_variation_price Wenn es funktioniert, wählen Sie als Antwort aus. Sie müssen den Aufruf add_filter ändern

    – Skatox

    25. Juli 2016 um 21:39 Uhr

1186480cookie-checkWoocommerce-Hook für Variationspreis

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy