如何在WordPress中关闭新用户通知电子邮件仅限管理员

s3fp2yjn  于 2023-05-22  发布在  WordPress
关注(0)|答案(3)|浏览(251)

我正在使用register_new_user行动禁用管理员的电子邮件通知,但当用户注册的它仍然生成一封电子邮件给管理员。
我正在使用重力表格进行用户注册
这是我的代码。

remove_action('register_new_user', 'wp_send_new_user_notifications');
add_action('register_new_user', 'ecpd_send_new_user_notifications');

function ecpd_send_new_user_notifications($user_id, $notify = 'user') {
    wp_new_user_notification($user_id, null, $notify);
}

任何帮助将不胜感激。

vfh0ocws

vfh0ocws1#

我认为重力形式插件是覆盖您的默认设置。首先,据我所知,你可以在 Jmeter 板上为默认通知电子邮件设置管理员通知。
您可以通过重力形式设置将其打开:
https://www.gravityhelp.com/documentation/article/configuring-notifications-in-gravity-forms/
您也可以在gform_notification上使用钩子。参考在这里:
https://www.gravityhelp.com/documentation/article/gform_notification/

8wigbo56

8wigbo562#

我终于想通了……
1.创建文件disable-new-user-emails.php
1.插入以下代码

<?php /*
Plugin Name:  Disable New User Email Notifications
Description:  Using GravityForms Registration Add-on and Custom Notifications? This will Disable the Default WordPress Admin and User Notifications.
Author:       BeHappy in 2017
 */

if ( ! function_exists( 'gf_new_user_notification' ) ) {
    function gf_new_user_notification( $user_id, $plaintext_pass = '', $notify = '' ) {
                return;
            }
        }
?>

1.保存省吧!
1.上传到/wp-content/plugins文件夹
1.激活插件
1.[网站]新用户注册电子邮件!:D

注意:我们使用的是GravityForms用户注册插件。为了让管理员或用户收到注册/欢迎电子邮件,您必须在表单的设置>通知中为他们创建通知
注意:如果您将注册表设置为自动生成用户密码,这也将阻止向新用户发送包含用户名和密码的电子邮件。

最后,我还运行了一个多站点...我已取消勾选“设置”>“注册”通知。我相信这同样的代码将工作一个单一的WP网站。

  • 已确认在WP的单个/独立安装上工作。
uurv41yg

uurv41yg3#

这对我很有效,放在plugins/mu-plugins文件夹中的插件中:

if ( ! function_exists( 'wp_new_user_notification' ) ) {
    function wp_new_user_notification( $user_id, $plaintext_pass = null, $notify = '' ) {
        return;
    }
}

以前,我在functions.php中使用它,它不起作用,但显然,当放置在另一个插件中时,它会覆盖也调用此函数的其他插件。

相关问题