WC_Emails::order_meta
Add order meta to email templates.
Method of the class: WC_Emails{}
Hooks from the method
Returns
null. Nothing (null).
Usage
$WC_Emails = new WC_Emails(); $WC_Emails->order_meta( $order, $sent_to_admin, $plain_text );
- $order(WC_Order) (required)
- Order instance.
- $sent_to_admin(true|false)
- If should sent to admin.
Default:false - $plain_text(true|false)
- If is plain text email.
Default:false
WC_Emails::order_meta() WC Emails::order meta code WC 10.4.3
public function order_meta( $order, $sent_to_admin = false, $plain_text = false ) {
/**
* Filter the order meta fields.
*
* @since 3.0.0
* @param array $fields Array of meta fields.
* @param bool $sent_to_admin If sent to admin.
* @param WC_Order $order Order instance.
*/
$fields = apply_filters( 'woocommerce_email_order_meta_fields', array(), $sent_to_admin, $order );
/**
* Deprecated woocommerce_email_order_meta_keys filter.
*
* @since 2.3.0
* @param array $fields Array of meta fields.
* @param bool $sent_to_admin If sent to admin.
*/
$_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( $order->get_meta( $field ) ),
);
}
}
if ( $fields ) {
if ( $plain_text ) {
foreach ( $fields as $field ) {
if ( isset( $field['label'], $field['value'] ) && $field['value'] ) {
echo wp_kses_post( $field['label'] . ': ' . $field['value'] ) . "\n"; // WPCS: XSS ok.
}
}
} else {
foreach ( $fields as $field ) {
if ( isset( $field['label'], $field['value'] ) && $field['value'] ) {
echo '<p><strong>' . wp_kses_post( $field['label'] ) . ':</strong> ' . wp_kses_post( $field['value'] ) . '</p>'; // WPCS: XSS ok.
}
}
}
}
}