Automattic\WooCommerce\Internal\EmailEditor

TransactionalEmailPersonalizer::prepare_context_datapublicWC 1.0

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() 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;
}