Legacy Order Table – Internal Name (Nickname) Column

if ( function_exists(‘wc_get_container’) && ! wc_get_container()->get(\Automattic\WooCommerce\Internal\DataStores\Orders\CustomOrdersTableController::class)->custom_orders_table_usage_is_enabled() ) { // LEGACY ORDER TABLE SNIPPET HERE add_filter(‘manage_edit-shop_order_columns’, function($columns) { $new_columns = []; foreach ($columns as $key => $label) { $new_columns[$key] = $label; if ($key === ‘order_number’) { $new_columns[‘internal_name’] = ‘Internal Name’; }…Continue reading

Add L/W/H Labels in Product Additional Information Dimensions

add_filter( ‘woocommerce_format_dimensions’, ‘rd_format_dimensions_with_labels’, 10, 2 ); function rd_format_dimensions_with_labels( $dimension_string, $dimensions ) { if ( empty( $dimensions ) || ! is_array( $dimensions ) ) { return $dimension_string; } $labels = [ ‘L’, ‘W’, ‘H’ ]; $values = array_values( $dimensions ); $unit…Continue reading

Show ‘NEW’ Badges for Recently Added Items in WooCommerce (copy)

/** * Snippet Name: Show ‘NEW’ Badges for Recently Added Items in WooCommerce * Snippet Author: wdxtechnologies.com */ // Show the NEW badge on the archive loop item add_action( ‘woocommerce_after_shop_loop_item_title’, ‘ecommercehints_product_archive_new_badge’, 1 ); function ecommercehints_product_archive_new_badge() { global $product; $days_to_show =…Continue reading

Create a Custom Shipping Method in WooCommerce

add_filter(‘woocommerce_shipping_methods’, ‘register_wholesale_shipping_method’); function register_wholesale_shipping_method($methods) { $methods[‘wholesale_shipping’] = ‘WC_Shipping_Wholesale’; return $methods; } if (!class_exists(‘WC_Shipping_Wholesale’)) { class WC_Shipping_Wholesale extends WC_Shipping_Method { public function __construct($instance_id = 0) { $this->id = ‘wholesale_shipping’; $this->instance_id = absint($instance_id); $this->method_title = __(‘Wholesale Shipping’); $this->method_description = __(‘Flat rate shipping…Continue reading

WooCommerce: Restrict Shipping Methods by User Role (Logged In, Logged Out, Custom Roles)

// 💡 Load multiselect field to all shipping methods add_action(‘woocommerce_init’, ‘woocommerce_shipping_instances_form_fields_filters’); function woocommerce_shipping_instances_form_fields_filters() { foreach (WC()->shipping->get_shipping_methods() as $shipping_method) { add_filter(‘woocommerce_shipping_instance_form_fields_’ . $shipping_method->id, ‘add_allowed_roles_field_to_shipping_methods’); } } // 🎯 Add multiselect role option (styled like tag input) function add_allowed_roles_field_to_shipping_methods($settings) { $settings[‘allowed_user_roles’] =…Continue reading

Show ‘NEW’ Badges for Recently Added Items in WooCommerce (copy)

/** * Snippet Name: Show ‘NEW’ Badges for Recently Added Items in WooCommerce * Snippet Author: wdxtechnologies.com */ // Show the NEW badge on the archive loop item add_action( ‘woocommerce_after_shop_loop_item_title’, ‘ecommercehints_product_archive_new_badge’, 1 ); function ecommercehints_product_archive_new_badge() { global $product; $days_to_show =…Continue reading

«WooCommerce | Admin email notification > Subscription Reactivated

add_action(‘woocommerce_subscription_status_active’, ‘send_admin_subscription_reactivated_email’, 10, 1); function send_admin_subscription_reactivated_email($subscription) { // Get the WooCommerce mailer $mailer = WC()->mailer(); // Get the email template content ob_start(); wc_get_template( ’emails/admin-subscription-reactivated.php’, // Your custom template file array( ‘subscription’ => $subscription, ’email_heading’ => ‘Subscription Reactivated’, ‘sent_to_admin’ => true,…Continue reading