Уведомление по электронной почте WooCommerce всех клиентов мгновенно, когда я добавляю новый или обновляю продукт

#php #wordpress #woocommerce

#php #wordpress #woocommerce

Вопрос:

Я пытался найти решение этой проблемы с помощью плагинов, но работал не так, как я хотел, я хотел бы уведомить по электронной почте всех моих зарегистрированных клиентов, когда я создаю или обновляю продукт.

Моя функция

 add_action( 'save_post', 'my_product_update' );

function my_product_update( $post ) {
    if($post->post_type == "product"){
         $pid=$post->ID;

           // Send Email ?

    }
}
 

Ответ №1:

 // WP_User_Query arguments
$args = array (
    'role' => 'customer',
);

// The User Query
$user_query = new WP_User_Query( $args );

// The User Loop
if ( ! empty( $user_query->results ) ) {
    foreach ( $user_query->results as $user ) {

        $to = $user->user_email;
        // create mail temelate and send mail
        wp_mail( $to, $subject, $message, $headers = '', $attachments = array() );
    }
} else {
    // no users found
}
 

Ответ №2:

Пожалуйста, используйте следующий хук действия WordPress для пользовательского типа сообщения:

 add_action('save_post_product', 'your_function_name');
 add_action( 'publish_product', 'your_function_name');

function your_function_name( $post_id ) {
  // do code here
}
 

Комментарии:

1. Приятно, спасибо. Вы знаете действие по отправке электронной почты для всех клиентов?

2. Вы должны написать пользовательский код для отправки электронной почты всем пользователям. проверьте мой другой ответ.