我有一种情况,每次创建 CPT 帖子时我都需要创建一个新用户。
CPT 具有以下字段,可以在创建帖子时填写:$user_name
和$user_email
这是我正在尝试的,但它不起作用:
function register_new_user( $new_status, $old_status, $post ) {
if ( ( 'publish' === $new_status && 'publish' !== $old_status )
&& 'cpt' === $post->post_type
) {
$user_name = get_post_meta($post_id, 'user_name', true);
$user_email = get_post_meta($post_id, 'user_email', true);
function wp_create_user( $username, $password, $email = '' ) {
$user_login = wp_slash( $user_name );
$user_email = wp_slash( $user_email );
$user_pass = $user_login;
$userdata = compact( $user_login, $user_email, $user_pass );
return wp_insert_user( $userdata );
};
};
};
add_action( 'transition_post_status', 'register_new_user', 10, 3 );
一如既往,非常感谢您对此的任何帮助。