STM_LMS_Mails::init();
класс STM_LMS_Mails
{
публичная статическая функция init()
{
add_action('order_created', 'STM_LMS_Mails:rder_created', 10, 3);
add_action('add_user_course', 'STM_LMS_Mails::add_user_course', 10, 2);
}
статическая функция wp_mail_text_html()
{
add_filter('wp_mail_content_type', 'STM_LMS_Mails::wp_mail_html');
}
статическая функция Remove_wp_mail_text_html()
{
Remove_filter('wp_mail_content_type', 'STM_LMS_Mails::wp_mail_html');
}
статическая функция wp_mail_html()
{
вернуть «текст/html»;
}
статическая функция order_created($user, $cart_items, $pay_code)
{
self::wp_mail_text_html();
$user = STM_LMS_User::get_current_user($user);
$user_login = $user['login'];
$message = sprintf(esc_html__('Новый заказ от пользователя %s.', 'masterstudy-lms-learning-management-system'), $user_login);
self::send_email('New Order', $message, '', array(), 'stm_lms_new_order', Compact('user_login'));
$message = esc_html__('Ваш заказ принят.', 'masterstudy-lms-learning-management-system');
self::send_email('New Order', $message, $user['email'], array(), 'stm_lms_new_order_accepted');
self::remove_wp_mail_text_html();
}
статическая функция add_user_course($user_id, $course_id)
{
self::wp_mail_text_html();
$user = STM_LMS_User::get_current_user($user_id);
if(STM_LMS_Course::check_course_author($course_id, $user_id)) возвращает false;
$course_title = get_the_title($course_id);
$login = $user['login'];
$message = sprintf(esc_html__('Курс %s был добавлен в %s.', 'masterstudy-lms-learning-management-system'), $course_title, $login);
if (apply_filters('stm_lms_send_admin_course_notice', true)) {
self::send_email('Курс добавлен к пользователю', $message, '', array(), 'stm_lms_course_added_to_user', Compact('course_title', 'login'));
}
$message = sprintf( esc_html__('Привет! Курс %s теперь доступен для изучения.
Чтобы пройти курс, вы должны пройти все модули и отправить проекты курса.
Чтобы завершить курс, вы должны пройти все модули и отправить проекты курса.
.', 'masterstudy-lms-learning-management-system' , ) , $course_title);
self::send_email('Курс добавлен.', $message, $user['email'], array(), 'stm_lms_course_available_for_user', Compact('course_title'));
self::remove_wp_mail_text_html();
}
статическая функция send_email($subject, $message, $to = '', $additional_receivers = array(), $filter = 'stm_lms_send_email_filter', $data = array())
{
$to = (!пустой($to)) ? $to: get_option('admin_email');
$receivers = array_merge(array($to), $additional_receivers);
$data = apply_filters('stm_lms_filter_email_data', массив(
'тема' => $тема,
'сообщение' => $сообщение,
'варс' => $данные,
'имя_фильтра' => $filter
));
wp_mail($receivers, $data['subject'], $data['message']);
}
}