{status}_{post_type} does not run correctly?

WooCommerce has its own hooks for things like this. You shouldn’t rely on the underlying WordPress post-related hooks and functions when dealing with products and orders. WooCommerce is moving towards using custom database tables for products and orders instead of custom post types and while there’ll be hooks etc. added for backwards compatibility, you’ll be … Read more

Add button linked to single product page on order detail page

The woocommerce_order_details_after_order_table hook receives the WC_Order object as the $order argument. This means you can get the items from the order with $order->get_items(). That will return an Array of WC_Order_Items. From this you can get the associated product of the first item, which you can use to get its permalink, to which you can append … Read more

email address non required

WooCommerce has a very broad documentation, one topic in it is about Customizing checkout fields using actions and filters, you can easily set billing_email to not be required. (code untested) add_filter(‘woocommerce_checkout_fields’, ‘WPSE0309_woocommerce_checkout_fields’); function WPSE0309_woocommerce_checkout_fields( $fields ) { $fields[‘billing’][‘billing_email’][‘required’] = false; return $fields; }

Awesome Support Custom Field for show Woocommerce orders

I found in documentation Checkbox, Radio and Select-Only Parameters $options (array): An array of options. The array must be or the form array( ‘option_id’ => ‘Option Label’ ) Example wpas_add_custom_field( ‘my_field_with_options’, array( ‘title’ => ‘My Options’, ‘options’ => array( ‘option1’ => ‘First Option’, ‘option2’ => ‘Second Option’), ‘order’ => 1 ) ); You add the … Read more

Add suffix to price html does not work

I don’t think the filter will work in your template, since you’re using wc_price( wc_get_price_including_tax( $product ) ) .. a possible workaround: function pr_price_suffix( $price, $product ) { return wc_price( wc_get_price_including_tax( $product ) ). ‘ test’; } add_filter( ‘woocommerce_get_price_html’, ‘pr_price_suffix’, 10, 2 ); and in your single-product.php template: <?php echo $product->get_price_html(); ?>