Automattic\WooCommerce\Internal\Admin\Emails
EmailListingRestController::recreate_email_post
Handle the POST /settings/email/listing/recreate-email-post.
Method of the class: EmailListingRestController{}
No Hooks.
Returns
Array|WP_Error. Request response or an error.
Usage
$EmailListingRestController = new EmailListingRestController(); $EmailListingRestController->recreate_email_post( $request );
- $request(WP_REST_Request) (required)
- The received request.
EmailListingRestController::recreate_email_post() EmailListingRestController::recreate email post code WC 10.3.3
public function recreate_email_post( WP_REST_Request $request ) {
$email_id = $request->get_param( 'email_id' );
$generated_post_id = '';
try {
$generated_post_id = $this->email_template_generator->generate_email_template_if_not_exists( $email_id );
} catch ( \Exception $e ) {
return new WP_Error(
'woocommerce_rest_email_post_generation_failed',
// translators: %s: Error message.
sprintf( __( 'Error generating email post. Error: %s.', 'woocommerce' ), $e->getMessage() ),
array( 'status' => 500 )
);
}
if ( $generated_post_id ) {
return array(
// translators: %s: WooCommerce transactional email ID.
'message' => sprintf( __( 'Email post generated for %s.', 'woocommerce' ), $email_id ),
'post_id' => (string) $generated_post_id,
);
}
return new WP_Error(
'woocommerce_rest_email_post_generation_error',
__( 'Error unable to generate email post.', 'woocommerce' ),
array( 'status' => 500 )
);
}