Automattic\WooCommerce\Internal\EmailEditor
TransactionalEmailPersonalizer::prepare_context_data
Prepare context data for email personalization. Adds new order specific context data.
Method of the class: TransactionalEmailPersonalizer{}
No Hooks.
Returns
Array. Context data for personalization
Usage
$TransactionalEmailPersonalizer = new TransactionalEmailPersonalizer(); $TransactionalEmailPersonalizer->prepare_context_data( $context, $email ): array;
- $context(array) (required)
- Previous version of context data.
- $email(WC_Email) (required)
- The WooCommerce email object.
TransactionalEmailPersonalizer::prepare_context_data() TransactionalEmailPersonalizer::prepare context data code WC 10.3.6
public function prepare_context_data( array $context, \WC_Email $email ): array {
$context['recipient_email'] = $email->get_recipient();
$context['order'] = $email->object instanceof \WC_Order ? $email->object : null;
// For emails of type new_user or reset_password we want to set user directly from the object.
if ( $email->object instanceof \WP_User ) {
$context['wp_user'] = $email->object;
} elseif ( $email->object instanceof \WC_Order ) {
$context['wp_user'] = $email->object->get_user();
} else {
$context['wp_user'] = null;
}
$context['wc_email'] = $email;
return $context;
}