Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- add_action( 'template_redirect', 'custom_use_alphabet', 100 );
- add_action( 'admin_init', '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 ) {
- global $wc_lottery_pn;
- remove_filter( 'woocommerce_get_item_data', array( $wc_lottery_pn->plugin_public, 'change_cart_ticket_number_to_alphabet'), 10 );
- remove_filter( 'woocommerce_display_item_meta', array( $wc_lottery_pn->plugin_public, 'change_order_ticket_number_to_alphabet'), 90 );
- remove_filter( 'woocommerce_order_item_display_meta_value', array( $wc_lottery_pn->plugin_public, 'woocommerce_order_item_display_meta_value_aplhabet'), 90 );
- add_filter( 'woocommerce_get_item_data', 'custom_change_cart_ticket_number_to_alphabet', 10, 2 );
- add_filter( 'woocommerce_display_item_meta', 'custom_change_order_ticket_number_to_alphabet', 90, 3 );
- add_filter( 'woocommerce_order_item_display_meta_value', 'custom_woocommerce_order_item_display_meta_value_aplhabet', 90, 3 );
- if ( is_product() || is_admin() ) {
- $post_id = !$post_id ? get_the_ID() : $post_id;
- if ( 'yes' === get_post_meta( $post_id , '_lottery_pick_number_alphabet', true ) ) {
- 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 = intval($ticket_number) + 1000;
- return $ticket_number ;
- }
- function custom_change_cart_ticket_number_to_alphabet( $item_data, $cart_item ) {
- // Format item data ready to display.
- foreach ( $item_data as $key => $data ) {
- if ( isset( $data['key'] ) && 'Ticket number' === $data['key'] ) {
- $product = wc_get_product( $cart_item['product_id'] );
- if ( 'yes' === get_post_meta( $cart_item['product_id'] , '_lottery_pick_number_alphabet', true ) ) {
- $item_data[ $key ]['display'] = custom_change_ticket_numbers_to_alphabet($data['value'], $product );
- }
- }
- }
- return $item_data;
- }
- function custom_change_order_ticket_number_to_alphabet( $html, $item, $args ) {
- $strings = false;
- $product_id = $item->get_product_id();
- $product = wc_get_product( $product_id );
- if ( ! $product || 'yes' !== get_post_meta( $product_id , '_lottery_pick_number_alphabet', true ) ) {
- return $html;
- }
- foreach ( $item->get_formatted_meta_data() as $meta_id => $meta ) {
- if ( 'Ticket number' === $meta->key ) {
- $value = $args['autop'] ? wp_kses_post( $meta->display_value ) : wp_kses_post( make_clickable( custom_change_ticket_numbers_to_alphabet(intval( $meta->value ), $product )) );
- $strings[] = $args['label_before'] . wp_kses_post( $meta->display_key ) . $args['label_after'] . $value;
- }
- }
- if ( $strings ) {
- $html = $args['before'] . implode( $args['separator'], $strings ) . $args['after'];
- }
- return $html;
- }
- function custom_woocommerce_order_item_display_meta_value_aplhabet( $meta_value, $meta, $item ){
- if ( is_a($item, 'WC_Order_Item_Product') ) {
- $product_id = $item->get_product_id();
- $product = wc_get_product( $product_id );
- if ( ! $product || 'yes' !== get_post_meta( $product_id , '_lottery_pick_number_alphabet', true ) ) {
- return $meta_value;
- }
- if ( 'Ticket number' === $meta->key ) {
- $meta_value = custom_change_ticket_numbers_to_alphabet(intval( $meta_value ), $product );
- }
- }
- return $meta_value;
- }
Advertisement
Add Comment
Please, Sign In to add comment