So greifen Sie auf die Seitenvariable innerhalb des Aktions-Hooks zu

Ich habe einen Aktionshaken, der einfach ein Kontaktformular zur Anmeldung anzeigt:

add_action('woocommerce_single_product_summary','add_product_signup', 10, 2); function add_product_signup() { do_shortcode('[contact-form-7 id="20709" title="Product Sale Notification Signup"]'); } 

Das funktioniert in Ordnung, ABER … Ich möchte nur die Form zeigen, wenn das Produkt NICHT im Angebot ist.

Wie kann ich auf die “on_sale” -Variable zugreifen, um nach True / False zu suchen, um dieses Kontaktformular dann ein- / auszublenden?

Solutions Collecting From Web of "So greifen Sie auf die Seitenvariable innerhalb des Aktions-Hooks zu"

Es gibt eine Methode für die Produktklasse, die is_on_sale() die tatsächlich bestimmt, ob das Produkt verkauft wird oder nicht. Sie können auf die global $product Variable zugreifen. Und muss den do_shortcode . Also wird der ganze Code wie-

 add_action('woocommerce_single_product_summary','add_product_signup', 10, 2); function add_product_signup() { global $product; if( $product->is_on_sale() ) { echo do_shortcode('[contact-form-7 id="20709" title="Product Sale Notification Signup"]'); } } 

Der obige Code wird getestet. Ich habe es persönlich getestet und es hat sehr gut funktioniert.