| Server IP : 62.72.47.131 / Your IP : 216.73.217.34 Web Server : Apache/2.4.66 (Debian) System : Linux 975cdb959a49 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64 User : ( 501) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/woocommerce/includes/tracks/events/ |
Upload File : |
<?php
/**
* WooCommerce Import Tracking
*
* @package WooCommerce\Tracks
*/
defined( 'ABSPATH' ) || exit;
/**
* This class adds actions to track usage of WooCommerce Imports.
*/
class WC_Importer_Tracking {
/**
* Init tracking.
*/
public function init() {
add_action( 'product_page_product_importer', array( $this, 'track_product_importer' ) );
}
/**
* Route product importer action to the right callback.
*
* @return void
*/
public function track_product_importer() {
// phpcs:disable WordPress.Security.NonceVerification.Recommended
if ( ! isset( $_REQUEST['step'] ) ) {
return;
}
if ( 'import' === $_REQUEST['step'] ) {
return $this->track_product_importer_start();
}
if ( 'done' === $_REQUEST['step'] ) {
return $this->track_product_importer_complete();
}
// phpcs:enable
}
/**
* Send a Tracks event when the product importer is started.
*
* @return void
*/
public function track_product_importer_start() {
// phpcs:disable WordPress.Security.NonceVerification.Recommended
if ( ! isset( $_REQUEST['file'] ) || ! isset( $_REQUEST['_wpnonce'] ) ) {
return;
}
$properties = array(
'update_existing' => isset( $_REQUEST['update_existing'] ) ? (bool) $_REQUEST['update_existing'] : false,
'delimiter' => empty( $_REQUEST['delimiter'] ) ? ',' : wc_clean( wp_unslash( $_REQUEST['delimiter'] ) ),
);
// phpcs:enable
WC_Tracks::record_event( 'product_import_start', $properties );
}
/**
* Send a Tracks event when the product importer has finished.
*
* @return void
*/
public function track_product_importer_complete() {
// phpcs:disable WordPress.Security.NonceVerification.Recommended
if ( ! isset( $_REQUEST['nonce'] ) ) {
return;
}
$properties = array(
'imported' => isset( $_GET['products-imported'] ) ? absint( $_GET['products-imported'] ) : 0,
'imported_variations' => isset( $_GET['products-imported-variations'] ) ? absint( $_GET['products-imported-variations'] ) : 0,
'updated' => isset( $_GET['products-updated'] ) ? absint( $_GET['products-updated'] ) : 0,
'failed' => isset( $_GET['products-failed'] ) ? absint( $_GET['products-failed'] ) : 0,
'skipped' => isset( $_GET['products-skipped'] ) ? absint( $_GET['products-skipped'] ) : 0,
);
// phpcs:enable
WC_Tracks::record_event( 'product_import_complete', $properties );
}
}