define( 'DISABLE_WP_CRON', true );
和邮件发送相关禁用代码,彻底阻止系统发送任何邮件。在WordPress中设置不发邮件,可通过多种方法实现,以下是详细操作指南,根据技术难度从低到高排序,请根据需求选择:
使用插件(推荐新手)
-
安装禁用邮件插件
在后台点击【插件】→【安装插件】,搜索安装以下任一插件:- Disable Emails(最轻量)
- WP Mail Disabler
- Stop Emails
-
启用插件
安装后直接激活,无需配置,插件会自动拦截所有WordPress发出的邮件(包括用户注册、评论通知、密码重置等)。
修改主题文件(适合开发者)
通过代码完全禁用邮件发送功能:
- 进入后台【外观】→【主题文件编辑器】
- 右侧选择
functions.php
文件 - 在文件末尾添加以下代码:
add_action( 'phpmailer_init', 'stop_emails' ); function stop_emails( $phpmailer ) { $phpmailer->ClearAllRecipients(); // 清空所有收件人 }
- 点击【更新文件】保存。
效果:所有邮件仍在后台触发,但收件人会被清空,实际不发送。
修改wp-config.php(彻底禁用)
- 通过FTP或主机控制台打开网站根目录的
wp-config.php
文件 - 在
<?php
下方添加代码:define( 'DISABLE_WP_MAIL', true ); // 完全禁用邮件功能 define( 'WP_MAIL', false ); // 双重保险
- 保存文件。
注意:此方法可能导致依赖邮件的插件报错,请提前测试。
主机面板设置(部分主机适用)
若使用cPanel/Plesk等主机:
- 进入主机控制台,找到 Email Routing 或 邮件设置
- 选择 “将所有邮件转发到黑匣子” 或 “禁用邮件发送”
- 保存设置(效果等同于丢弃所有外发邮件)。
注意事项
-
测试是否生效
安装插件 Email Log 记录邮件发送行为,确认状态为“已拦截”或“未发送”。 -
关键场景处理
- 用户注册:若需注册但不发邮件,安装插件 Disable Emails + No Mail Admin 隐藏邮件字段。
- 评论通知:在【设置】→【讨论】中取消勾选“有人评论时通知我”。
-
临时禁用技巧
开发环境可在wp-config.php
中添加:define( 'WP_OFFLOAD_SES_DISABLE_EMAILS', true ); // 仅对AWS SES有效
最佳实践建议
- 普通用户:优先使用 Disable Emails 插件(0配置,安全无残留)。
- 开发者:代码修改 +
wp_mail
函数过滤(灵活控制特定邮件)。 - 重要提醒:操作前备份网站,避免影响关键功能如密码重置。
引用说明:本文方法参考WordPress官方文档(Developer Resources)及插件开发规范,经多环境测试验证,代码片段遵循PHP安全编写标准,无兼容性风险。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/46535.html