diff --git a/includes/class-wc-emails.php b/includes/class-wc-emails.php index 16c3ffdf0a7..2a41d27ae48 100644 --- a/includes/class-wc-emails.php +++ b/includes/class-wc-emails.php @@ -366,12 +366,15 @@ class WC_Emails { /** * Add customer details to email templates. * - * @param mixed $order + * @param WC_Order $order * @param bool $sent_to_admin (default: false) * @param bool $plain_text (default: false) * @return string */ public function customer_details( $order, $sent_to_admin = false, $plain_text = false ) { + if ( ! is_a( 'WC_Order', $order ) ) { + return; + } $fields = array(); if ( $order->get_customer_note() ) { @@ -386,14 +389,14 @@ class WC_Emails { 'label' => __( 'Email address', 'woocommerce' ), 'value' => wptexturize( $order->get_billing_email() ), ); - } + } - if ( $order->get_billing_phone() ) { + if ( $order->get_billing_phone() ) { $fields['billing_phone'] = array( 'label' => __( 'Phone', 'woocommerce' ), 'value' => wptexturize( $order->get_billing_phone() ), ); - } + } $fields = array_filter( apply_filters( 'woocommerce_email_customer_details_fields', $fields, $sent_to_admin, $order ), array( $this, 'customer_detail_field_is_valid' ) ); @@ -408,6 +411,9 @@ class WC_Emails { * Get the email addresses. */ public function email_addresses( $order, $sent_to_admin = false, $plain_text = false ) { + if ( ! is_a( 'WC_Order', $order ) ) { + return; + } if ( $plain_text ) { wc_get_template( 'emails/plain/email-addresses.php', array( 'order' => $order ) ); } else { diff --git a/includes/class-wc-structured-data.php b/includes/class-wc-structured-data.php index 504427b6364..bac68582478 100644 --- a/includes/class-wc-structured-data.php +++ b/includes/class-wc-structured-data.php @@ -328,7 +328,7 @@ class WC_Structured_Data { * @param bool $plain_text Plain text email (default: false). */ public function generate_order_data( $order, $sent_to_admin = false, $plain_text = false ) { - if ( $plain_text ) { + if ( $plain_text || ! is_a( $order, 'WC_Order' ) ) { return; }