/* use only 5 letters */ add_action( 'template_redirect', 'custom_use_alphabet', 100 ); add_action( 'woocommerce_product_options_lottery', 'custom_use_alphabet', 100 ); add_action( 'export_lottery_history_with_extra_info','custom_use_alphabet', 100 ); function custom_use_alphabet( $post_id = false ){ if( is_product() || is_admin() ){ $post_id = !$post_id ? get_the_ID() : $post_id; if( get_post_meta( $post_id , '_lottery_pick_number_alphabet', true ) === 'yes' ){ global $wc_lottery_pn; remove_filter( 'ticket_number_display_html', array( $wc_lottery_pn->plugin_public, 'change_ticket_numbers_to_alphabet'), 10 ); remove_filter( 'ticket_number_tab_display_html', array( $wc_lottery_pn->plugin_public, 'change_ticket_tab_to_alphabet'), 10 ); add_filter( 'ticket_number_display_html', 'custom_change_ticket_numbers_to_alphabet', 10, 2 ); //add_filter( 'ticket_number_tab_display_html', 'custom_change_ticket_numbers_to_alphabet', 10, 2 ); } } } function custom_change_ticket_numbers_to_alphabet( $ticket_number, $product ){ $_ticket_number = $ticket_number; if( ! $product || !$ticket_number ) { return $ticket_number; } $max_tickets = intval( $product->get_max_tickets() ); $tabnumbers = get_post_meta( $product->get_id() , '_lottery_pick_number_tab_qty', true ); $tabnumbers = $tabnumbers ? intval( $tabnumbers ) : 100; if ( $max_tickets > $tabnumbers * 5 ){ $tabnumbers = ceil ( $max_tickets / 5 ); } $tabnumbers == apply_filters( 'lottery_numbers_to_alphabet_number_per_letter', $tabnumbers ); $alphabet = range('A', 'E'); $in = ( intval(( $ticket_number - 1 ) /$tabnumbers ) ); if($in > 0 ){ $ticket_number = $ticket_number - ( $tabnumbers * $in ); } $is_100 = $ticket_number % 100; if ($ticket_number === '00' && $is_100 === 0 ){ $ticket_number = '100'; } $ticket_number = ltrim($ticket_number, 0 ); if( isset( $alphabet[$in] ) ){ $ticket_number = $alphabet[$in].$ticket_number; } else { return $_ticket_number; } return $ticket_number; }