2016-08-04 1 views
0

J'essaie d'envoyer un e-mail lorsqu'une commande est déplacée vers un statut personnalisé dans woocommerce. J'ai réussi à créer un plugin qui crée un statut personnalisé et l'ordre est assigné à l'état personnalisé.woocommerce_email_actions ne fonctionne pas dans le plugin personnalisé

J'ai également ajouté avec succès un modèle d'email personnalisé sous Paramètres -> Emails dans WooCommerce et un code écrit qui devrait envoyer un email lorsque la commande est déplacée vers ce statut personnalisé.

Toutefois, ce code ne se déclenche pas et les messages électroniques ne sont pas envoyés.

Voici mon code.

apply_filters('woocommerce_email_actions', array('woocommerce_order_status_processing_to_partial-shipment')); 


// Trigger on new paid orders 
add_action('woocommerce_order_status_processing_to_partial-shipment_notification', array($this, 'trigger')); 

l'action ne vient jamais dans la fonction de déclenchement que j'ai écrite. J'utilise wordpress 4.5.3 et woocommerce version 2.6.4. Quelqu'un peut-il suggérer ce qui pourrait mal se passer? Merci.

+0

double possible de [WooCommerce - envoyez un courriel personnalisé sur le changement d'état de commande personnalisé] (http : //stackoverflow.com/questions/27112461/woocommerce-send-custom-email-on-custom-order-status-change) – helgatheviking

+0

Voir [cette réponse] (http://stackoverflow.com/a/27122473/383847) – helgatheviking

Répondre

0

Depuis WooCommerce 2.3, vous pouvez utiliser le filtre 'woocommerce_email_actions de, vous pouvez essayer ceci:

function new_woocommerce_email_actions($actions){ 
    $actions[] = 'woocommerce_order_status_processing_to_partial-shipment_notification'; 
    return $actions; 
} 
add_filter('woocommerce_email_actions', 'new_woocommerce_email_actions'); 

chance