How to create custom plugin for customised messages in checkout flow of WooCommerce
In many cases, there will be requirement for showing some customised messages in Woo commerce checkout flow. Here we are discussing about how to create a custom plugin for displaying customised messages in checkout and purchase success pages.
After installing our custom plugin, checkout and checkout success page will show below messages.
First Create a folder called dn-check-out-validation in path wp-contents/plugins/
And create a file dn-custom-checkout.php
Add meta data like your plugin name and other details as below.
/**
* Plugin Name: DN Check out plugin
* Plugin URI: http://www.digitalnadeem.com
* Description: A plugin custom checkout Email validation
* Author: DigitalNadeem.com
* Author URI: http://www.digitalnadeem.com
* Version: 1.0
*/
On plugin loaded action, call function dn_checkout_init where we are calling woocommerce check out actions for displaying messages.
add_action( ‘plugins_loaded’, ‘dn_checkout_init’ );
We have to implement dn_checkout_init function as provided below.
if ( ! function_exists( 'dn_checkout_init' ) ) {
function dn_checkout_init() {
// check for woocommerce enabled or not
if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
// Yes, WooCommerce is enabled
add_action( 'woocommerce_before_thankyou', 'dn_custom_checkout_success_message_after_payment' );
add_action( 'woocommerce_before_checkout_form', 'dn_custom_checkout_form_msg' );
} else {
// WooCommerce is NOT enabled!
}
}
}
First check for woo commerce plugin enabled or not, then add below actions.
add_action( 'woocommerce_before_thankyou', 'dn_custom_checkout_success_message_after_payment' );
add_action( 'woocommerce_before_checkout_form', 'dn_custom_checkout_form_msg' );
Function ‘dn_custom_checkout_form_msg’ is for showing a message on top of checkout form. Implementation is provided below.
// message above check out form
if ( ! function_exists( 'dn_custom_checkout_form_msg' ) ) {
function dn_custom_checkout_form_msg() {
$message = "Please Provide valid billing email address. Purchased source code will be send to this email id!";
wc_print_notice( esc_html($message), 'success' );
}
}
Below function display message after purchase completed.
// message after purchase
if ( ! function_exists( 'dn_custom_checkout_success_message_after_payment' ) ) {
function dn_custom_checkout_success_message_after_payment( ){
wc_print_notice( __("You will recieve the purchased product in your Billing email shortly.If you are not recieving mail try again add to cart and purchase or contact nadeem@digitalnadeem.com", "woocommerce"), "success" );
}
}
You can download complete source code of this plugin here.