fix: Update date filtering in supplier row collection to use DateTimeImmutable and date_query

This commit is contained in:
2026-01-10 15:56:28 +00:00
parent 03fdf89442
commit 08551e0013
2 changed files with 14 additions and 12 deletions

View File

@@ -307,16 +307,18 @@ class Siti_Stock_Supplier_Exports {
private function collect_rows_for_supplier( $supplier ) {
$key = $this->normalize_supplier_key( $supplier );
$after_timestamp = current_time( 'timestamp' ) - DAY_IN_SECONDS;
$date_filter = array(
'after' => gmdate( 'Y-m-d H:i:s', $after_timestamp ),
);
$site_timezone = function_exists( 'wp_timezone' ) ? wp_timezone() : new DateTimeZone( wp_timezone_string() );
$after_date = new DateTimeImmutable( 'now', $site_timezone );
$after_date = $after_date->sub( new DateInterval( 'P1D' ) );
$after_utc = $after_date->setTimezone( new DateTimeZone( 'UTC' ) );
if ( class_exists( 'WC_DateTime' ) ) {
$after_object = new WC_DateTime( '@' . $after_timestamp );
$after_object->setTimezone( new DateTimeZone( 'UTC' ) );
$date_filter = array( 'after' => $after_object );
}
$date_query = array(
array(
'column' => 'date_created_gmt',
'after' => $after_utc->format( 'Y-m-d H:i:s' ),
'inclusive' => true,
),
);
$query = new WC_Order_Query(
array(
@@ -324,7 +326,7 @@ class Siti_Stock_Supplier_Exports {
'limit' => -1,
'type' => 'shop_order',
'return' => 'objects',
'date_created' => $date_filter,
'date_query' => $date_query,
)
);