Nav apraksta

class-wc-order-tracking.php 905B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. /**
  3. * WooCommerce Order Tracking
  4. *
  5. * @package WooCommerce\Tracks
  6. */
  7. defined( 'ABSPATH' ) || exit;
  8. /**
  9. * This class adds actions to track usage of a WooCommerce Order.
  10. */
  11. class WC_Order_Tracking {
  12. /**
  13. * Init tracking.
  14. */
  15. public function init() {
  16. add_action( 'woocommerce_admin_order_data_after_order_details', array( $this, 'track_order_viewed' ) );
  17. }
  18. /**
  19. * Send a Tracks event when an order is viewed.
  20. *
  21. * @param WC_Order $order Order.
  22. */
  23. public function track_order_viewed( $order ) {
  24. if ( ! $order instanceof WC_Order || ! $order->get_id() ) {
  25. return;
  26. }
  27. $properties = array(
  28. 'current_status' => $order->get_status(),
  29. 'date_created' => $order->get_date_created() ? $order->get_date_created()->format( DateTime::ATOM ) : '',
  30. 'payment_method' => $order->get_payment_method(),
  31. );
  32. WC_Tracks::record_event( 'single_order_view', $properties );
  33. }
  34. }