get_helper( 'shortcode' )->shortcode_wrapper( array( __CLASS__, 'output' ), $atts ); } /** * Output the shortcode. * * @access public * @param array $atts * @return void */ public static function output( $atts ) { global $woocommerce; extract(shortcode_atts(array( ), $atts)); global $post; if ( ! empty( $_REQUEST['orderid'] ) ) { $woocommerce->get_helper( 'nonce' )->verify_nonce( 'order_tracking' ); $order_id = empty( $_REQUEST['orderid'] ) ? 0 : esc_attr( $_REQUEST['orderid'] ); $order_email = empty( $_REQUEST['order_email'] ) ? '' : esc_attr( $_REQUEST['order_email']) ; if ( ! $order_id ) { echo '
' . __( 'Please enter a valid order ID', 'woocommerce' ) . '
'; } elseif ( ! $order_email ) { echo '' . __( 'Please enter a valid order email', 'woocommerce' ) . '
'; } else { $order = new WC_Order( apply_filters( 'woocommerce_shortcode_order_tracking_order_id', $order_id ) ); if ( $order->id && $order_email ) { if ( strtolower( $order->billing_email ) == strtolower( $order_email ) ) { do_action( 'woocommerce_track_order', $order->id ); woocommerce_get_template( 'order/tracking.php', array( 'order' => $order ) ); return; } } else { echo '' . sprintf( __( 'Sorry, we could not find that order id in our database.', 'woocommerce' ), get_permalink($post->ID ) ) . '
'; } } } woocommerce_get_template( 'order/form-tracking.php' ); } }