A – Prepare

A – Prepare

1 – Enqueue file JS with dependent arrays that contain ‘woocommerce-email-template-customizer-components’.

2 – Add email type (If any):

function register_email_type( $emails ) {
   $emails[$id] = [
      'name'            => 'Display name',
      'hide_rules'      => [
         'country',
         'category',
         'min_order',
         'max_order'
      ],
      'accept_elements' => [
         'component_type' //Your component type
      ]
   ];

   return $emails;
}

add_filter( 'viwec_register_email_type', 'register_email_type' );

 

3 – Add sample subject

function register_email_sample_subject( $subjects ) {

   $subjects[$id] = 'Your sample subject';

   return $subjects;
}

add_filter( 'viwec_sample_subjects', 'register_email_sample_subject' );

 

4 – Add sample template

public function register_email_sample_template( $samples ) {

      $samples[$id] = [
         'basic' => [
            'name' => 'Display name',
            'data' => 'Your sample data'
         ]
      ];

      return $samples;
   }

add_filter( 'viwec_sample_templates', 'register_email_sample_template' );

 

5 – Declare relevant parameters for JS file:

– Use filter hook: ‘viwec_live_edit_shortcodes’ to declare shortcodes in editing email template pages.

function register_live_edit_shortcodes( $shortcodes ) {

   $shortcodes[ $id ] = array(
      '{shortcode}' => 'Display',
   );

   return $shortcodes;
}

add_filter( 'viwec_live_edit_shortcodes', 'register_live_edit_shortcodes' );

 

–  Use filter: ‘viwec_register_preview_shortcode’ to replace shortcodes when pressing in Preview button.

function register_preview_shortcode( $shortcodes ) {

   $shortcodes[ $id ] = array(
      '{shortcode}' => 'Display',
   );

   return $shortcodes;
}

add_filter( 'viwec_register_preview_shortcode', 'register_preview_shortcode' );