Нет описания

class-wc-cli-tracker-command.php 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. /**
  3. * WC_CLI_Tracker_Command class file.
  4. *
  5. * @package WooCommerce\CLI
  6. */
  7. if ( ! defined( 'ABSPATH' ) ) {
  8. exit;
  9. }
  10. /**
  11. * Allows access to tracker snapshot for transparency and debugging.
  12. *
  13. * @since 5.5.0
  14. * @package WooCommerce
  15. */
  16. class WC_CLI_Tracker_Command {
  17. /**
  18. * Registers a command for showing WooCommerce Tracker snapshot data.
  19. */
  20. public static function register_commands() {
  21. WP_CLI::add_command( 'wc tracker snapshot', array( 'WC_CLI_Tracker_Command', 'show_tracker_snapshot' ) );
  22. }
  23. /**
  24. * Dump tracker snapshot data to screen.
  25. *
  26. * ## EXAMPLES
  27. *
  28. * wp wc tracker snapshot --format=yaml
  29. * wp wc tracker snapshot --format=json
  30. *
  31. * ## OPTIONS
  32. *
  33. * [--format=<format>]
  34. * : Render output in a particular format, see WP_CLI\Formatter for details.
  35. *
  36. * @see \WP_CLI\Formatter
  37. * @see WC_Tracker::get_tracking_data()
  38. * @param array $args WP-CLI positional arguments.
  39. * @param array $assoc_args WP-CLI associative arguments.
  40. */
  41. public static function show_tracker_snapshot( $args, $assoc_args ) {
  42. $snapshot_data = WC_Tracker::get_tracking_data();
  43. $formatter = new \WP_CLI\Formatter(
  44. $assoc_args,
  45. array_keys( $snapshot_data )
  46. );
  47. $formatter->display_items( array( $snapshot_data ) );
  48. }
  49. }