/** * Read a order item from the database. * * @since 2.7.0 * @param WC_Order_Item $item */ public function read(&$item) { global $wpdb; $item->set_defaults(); $data = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$wpdb->prefix}woocommerce_order_items WHERE order_item_id = %d LIMIT 1;", $item->get_id())); if (!$data) { throw new Exception(__('Invalid order item.', 'woocommerce')); } $item->set_props(array('order_id' => $data->order_id, 'name' => $data->order_item_name, 'type' => $data->order_item_type)); $item->read_meta_data(); $item->set_object_read(true); }