Automattic\WooCommerce\Internal\EmailEditor

BlockEmailRenderer::render_block_emailprivateWC 1.0

Maybe render block-based email content.

Method of the class: BlockEmailRenderer{}

No Hooks.

Returns

String. Modified email content

Usage

// private - for code of main (parent) class only
$result = $this->render_block_email( $email_post, $woo_content, $wc_email ): ?string;
$email_post(WP_Post) (required)
Email post.
$woo_content(string) (required)
WooCommerce email content.
$wc_email(WC_Email) (required)
WooCommerce email.

BlockEmailRenderer::render_block_email() code WC 10.3.6

private function render_block_email( \WP_Post $email_post, string $woo_content, \WC_Email $wc_email ): ?string {
	try {
		$subject             = $wc_email->get_subject(); // We will get subject from $email_post after we add it to the editor.
		$preheader           = $wc_email->get_preheader();
		$rendered_email_data = $this->renderer->render( $email_post, $subject, $preheader, 'en' );
		$personalized_email  = $this->personalizer->personalize_content( $rendered_email_data['html'] );
		$rendered_email      = str_replace( self::WOO_EMAIL_CONTENT_PLACEHOLDER, $woo_content, $personalized_email );
		add_filter( 'woocommerce_email_styles', array( $this->woo_content_processor, 'prepare_css' ), 10, 2 );
		return $rendered_email;
	} catch ( \Exception $e ) {
		wc_caught_exception( $e, __METHOD__, array( $email_post, $woo_content, $wc_email ) );
		return null;
	}
}