Для запрета отправки писем с определенных email доменов в WordPress можно использовать дополнительные плагины или написать свою функцию.
Если вы предпочитаете использовать плагины, одним из самых популярных вариантов является "Stop Emails". После установки и активации плагина вы сможете настроить список запрещенных email доменов. Все письма, отправленные с этих доменов, будут блокироваться и не достигнут адресата.
Если вы предпочитаете написать свою функцию, вам понадобится добавить следующий код в файл functions.php вашей темы или в файл плагина:
function block_specific_email_domains( $atts ) { // Список запрещенных email доменов $blocked_domains = array( 'example.com', 'example.org' ); // Получаем email адрес отправителя $headers = $atts['headers']; $from = ''; if( preg_match('/^From: (.*)/m', $headers, $matches) ) { $from = trim( $matches[1] ); } // Получаем домен отправителя $domain = strtolower( substr( strrchr( $from, '@' ), 1 ) ); // Проверяем, является ли домен запрещенным if( in_array( $domain, $blocked_domains ) ) { // Если домен запрещен, выводим сообщение об ошибке wp_die( 'Отправка писем с этого домена запрещена.' ); } } add_action( 'phpmailer_init', 'block_specific_email_domains' );
Эта функция будет выполняться после инициализации объекта PHPMailer, который WordPress использует для отправки писем. Она получает заголовки письма и извлекает адрес отправителя. Затем сравнивает домен отправителя с доменами из списка запрещенных. Если найдено совпадение, функция выводит сообщение об ошибке, прерывая отправку письма.
Не забудьте сохранить изменения в файле functions.php или плагине и протестировать результаты, отправив письмо с запрещенного email домена.