Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用wp_insert_user创建用户&;生成密码-通知新用户(包括密码)的最佳方式?_Php_Wordpress - Fatal编程技术网

Php 使用wp_insert_user创建用户&;生成密码-通知新用户(包括密码)的最佳方式?

Php 使用wp_insert_user创建用户&;生成密码-通知新用户(包括密码)的最佳方式?,php,wordpress,Php,Wordpress,在Paypal交易完成后的定制PHP页面中,我根据输入的信息创建了一个WP用户。事实上,wp_new_user_通知发送了一封带有“设置密码,请访问以下地址”链接的电子邮件,这似乎是草率和不必要的,并且暗示忘记了密码(至少在我试图更改的臃肿网站上,这可能不是默认行为) 或者,我只想创建一个用户和一个WP生成的密码,然后使用如下方式向他们发送详细信息(我省略了一些不相关的代码): 是否有一种实用的方法可以使用wp_new_user_通知以明文形式发送生成的密码,以便接收者知道它是什么?或者,当我有

在Paypal交易完成后的定制PHP页面中,我根据输入的信息创建了一个WP用户。事实上,wp_new_user_通知发送了一封带有“设置密码,请访问以下地址”链接的电子邮件,这似乎是草率和不必要的,并且暗示忘记了密码(至少在我试图更改的臃肿网站上,这可能不是默认行为)

或者,我只想创建一个用户和一个WP生成的密码,然后使用如下方式向他们发送详细信息(我省略了一些不相关的代码):

是否有一种实用的方法可以使用wp_new_user_通知以明文形式发送生成的密码,以便接收者知道它是什么?或者,当我有非散列版本可用时,是否需要让自定义PHP页面发送自定义电子邮件

最后,我只想创建用户,并向他们发送一封带有用户名和生成密码的“欢迎”电子邮件,只是不确定最佳方法和/或我是否应该使用wp_new_user_通知功能。上面的代码仍然发送默认的用户通知电子邮件,我知道我可以通过插件进行更改,但我不能以这样的方式将纯文本密码包含在内


注意:有一个较老的问答似乎涵盖了这一点,但纯文本密码似乎被贬低了?

理想情况下,以纯文本发送密码从来都不是一个好主意,您可以生成一个重置链接,要求他们更新密码。感谢幸运的是,这并不是一个过于敏感的登录,如果无法传递WP密码,那么能够生成WP密码又有什么意义呢?WP不会将纯文本版本保存在任何地方,而是对其进行散列并存储(单向散列)。因此,除非您将其保存在某个地方(如果在您打算使用之前没有重定向,则保存在全局中,或者保存在db中),否则无法从db中提取它,但请确保在使用之后进行清理
$password = wp_generate_password( 12, true );
$userdata = array(
    'user_login'  =>  $email,
    'user_pass'    =>  $password,
);
$user_id = wp_insert_user( $userdata ) ;
if ( ! is_wp_error( $user_id ) ) {
    wp_new_user_notification( $user_id, null, both ); 
}