Conversation
supportHello, I’m using WooCommerce with HPOS (High-Performance Order Storage) enabled. When I try to preview a WooCommerce email template (e.g. customer processing order), the AfterShip plugin causes a fatal error and the preview breaks. It looks like the plugin tries to load order ID 12345 during the preview, but since this is only a placeholder ID used by WooCommerce for testing, it doesn’t exist in the HPOS tables and the process fails. I will attach a screenshot and the debug log with the full stack trace for your reference. Could you please check this issue and update the plugin so it safely handles the email preview with HPOS enabled? Thank you! [01-Sep-2025 07:59:44 UTC] PHP Fatal error: Uncaught Exception: Invalid order IDs in call to read_multiple() in D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\src\Internal\DataStores\Orders\OrdersTableDataStore.php:1316 Stack trace: #0 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\src\Internal\DataStores\Orders\OrdersTableDataStore.php(1301): Automattic\WooCommerce\Internal\DataStores\Orders\OrdersTableDataStore->read_multiple(Array) #1 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\class-wc-data-store.php(159): Automattic\WooCommerce\Internal\DataStores\Orders\OrdersTableDataStore->read(Object(WC_Order)) #2 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\abstracts\abstract-wc-order.php(140): WC_Data_Store->read(Object(WC_Order)) #3 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\aftership-woocommerce-tracking\includes\class-aftership-actions.php(654): WC_Abstract_Order->__construct(12345) #4 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\aftership-woocommerce-tracking\includes\class-aftership-actions.php(779): AfterShip_Actions->get_tracking_items(12345) #5 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\aftership-woocommerce-tracking\includes\class-aftership-actions.php(454): AfterShip_Actions->get_tracking_items_for_display(12345) #6 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(324): AfterShip_Actions->email_display(Object(WC_Order), false, false, Object(WC_Email_Customer_Processing_Order)) #7 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(348): WP_Hook->apply_filters('', Array) #8 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\plugin.php(517): WP_Hook->do_action(Array) #9 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\templates\emails\email-order-details.php(42): do_action('woocommerce_ema...', Object(WC_Order), false, false, Object(WC_Email_Customer_Processing_Order)) #10 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\wc-core-functions.php(346): include('D:\\_WEB\\LocalWP...') #11 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\class-wc-emails.php(507): wc_get_template('emails/email-or...', Array) #12 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(324): WC_Emails->order_details(Object(WC_Order), false, false, Object(WC_Email_Customer_Processing_Order)) #13 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) #14 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\plugin.php(517): WP_Hook->do_action(Array) #15 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\templates\emails\customer-processing-order.php(59): do_action('woocommerce_ema...', Object(WC_Order), false, false, Object(WC_Email_Customer_Processing_Order)) #16 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\wc-core-functions.php(346): include('D:\\_WEB\\LocalWP...') #17 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\wc-core-functions.php(365): wc_get_template('emails/customer...', Array, '', '') #18 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\emails\class-wc-email-customer-processing-order.php(109): wc_get_template_html('emails/customer...', Array) #19 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\src\Internal\Admin\EmailPreview\EmailPreview.php(343): WC_Email_Customer_Processing_Order->get_content_html() #20 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\src\Internal\Admin\EmailPreview\EmailPreview.php(246): Automattic\WooCommerce\Internal\Admin\EmailPreview\EmailPreview->render_preview_email() #21 D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\includes\admin\class-wc-admin.php(240): Automattic\WooCommerce\Internal\Admin\EmailPreview\EmailPreview->render() #22 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(324): WC_Admin->preview_emails('') #23 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) #24 D:\_WEB\LocalWP\ms-project\app\public\wp-includes\plugin.php(517): WP_Hook->do_action(Array) #25 D:\_WEB\LocalWP\ms-project\app\public\wp-admin\admin.php(176): do_action('admin_init') #26 D:\_WEB\LocalWP\ms-project\app\public\wp-admin\index.php(10): require_once('D:\\_WEB\\LocalWP...') #27 {main} thrown in D:\_WEB\LocalWP\ms-project\app\public\wp-content\plugins\woocommerce\src\Internal\DataStores\Orders\OrdersTableDataStore.php on line 1316
No comments were stored for this source.