WC_Emails::order_meta PHP Method

order_meta() public method

Add order meta to email templates.
public order_meta ( mixed $order, boolean $sent_to_admin = false, boolean $plain_text = false ) : string
$order mixed
$sent_to_admin boolean (default: false)
$plain_text boolean (default: false)
return string
    public function order_meta($order, $sent_to_admin = false, $plain_text = false)
    {
        $fields = apply_filters('woocommerce_email_order_meta_fields', array(), $sent_to_admin, $order);
        /**
         * Deprecated woocommerce_email_order_meta_keys filter.
         *
         * @since 2.3.0
         */
        $_fields = apply_filters('woocommerce_email_order_meta_keys', array(), $sent_to_admin);
        if ($_fields) {
            foreach ($_fields as $key => $field) {
                if (is_numeric($key)) {
                    $key = $field;
                }
                $fields[$key] = array('label' => wptexturize($key), 'value' => wptexturize(get_post_meta($order->get_id(), $field, true)));
            }
        }
        if ($fields) {
            if ($plain_text) {
                foreach ($fields as $field) {
                    if (isset($field['label']) && isset($field['value']) && $field['value']) {
                        echo $field['label'] . ': ' . $field['value'] . "\n";
                    }
                }
            } else {
                foreach ($fields as $field) {
                    if (isset($field['label']) && isset($field['value']) && $field['value']) {
                        echo '<p><strong>' . $field['label'] . ':</strong> ' . $field['value'] . '</p>';
                    }
                }
            }
        }
    }