PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.21
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.21
1.10.22 1.10.21 1.10.20 1.10.19 1.10.18 1.10.17 1.10.16 1.10.15 1.10.13 1.10.14 1.10.12 1.10.11 1.10.10 1.10.9 1.10.8 untagged-3d9b7ccddc54df87c672 1.10.7 1.10.6 1.10.5 1.10.3 1.10.4 1.10.2 1.10.1 1.10.0 1.9.17 All 166 releases
← All changes | includes/Services/Fiscal_Receipt_Service.php +12 -3 1.10.2 → 1.10.21 View file →
@@ -50,10 +50,18 @@
50 50 if ( ! in_array( $status, self::VALID_STATUSES, true ) ) {
51 51 return;
52 52 }
53 53
54 - update_post_meta( $order_id, self::META_KEY_SUBMISSION_STATUS, $status );
55 - update_post_meta( $order_id, self::META_KEY_STATUS_UPDATED_AT, current_time( 'mysql', true ) );
54 + // Through the order object, not update_post_meta(): on HPOS the order's meta
55 + // table is wc_orders_meta and a postmeta row is invisible to get_submission_status().
56 + $order = wc_get_order( $order_id );
57 + if ( ! $order ) {
58 + return;
59 + }
60 +
61 + $order->update_meta_data( self::META_KEY_SUBMISSION_STATUS, $status );
62 + $order->update_meta_data( self::META_KEY_STATUS_UPDATED_AT, current_time( 'mysql', true ) );
63 + $order->save();
56 64 }
57 65
58 66 /**
59 67 * Get submission status for an order.
@@ -62,9 +70,10 @@
62 70 *
63 71 * @return string
64 72 */
65 73 public function get_submission_status( int $order_id ): string {
66 - $status = get_post_meta( $order_id, self::META_KEY_SUBMISSION_STATUS, true );
74 + $order = wc_get_order( $order_id );
75 + $status = $order ? $order->get_meta( self::META_KEY_SUBMISSION_STATUS ) : '';
67 76
68 77 if ( in_array( $status, self::VALID_STATUSES, true ) ) {
69 78 return $status;
70 79 }