纯源码,并非插件。因为有的时候虚拟机不支持邮件发送,所以想弄一个这个,这样可以避免很多问题,我们接下来开始讲解怎么操作。
操作步骤
在网站根目录找到wp-login.php文件,用notepad++打开,直接拉到730行处,就可以看到我们要修改的代码了。
<p> <label for="user_login"><?php _e('Username') ?><br /> <input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr(wp_unslash($user_login)); ?>" size="25" /></label> </p> <p> <label for="user_email"><?php _e('Email') ?><br /> <input type="email" name="user_email" id="user_email" class="input" value="<?php echo esc_attr( wp_unslash( $user_email ) ); ?>" size="25" /></label> </p>
我们现在在后面添加密码框,代码如下
<p> <label for="password"><?php _e( '密码', 'ugp-domain' );?><br/> <input id="password" class="input" type="password" tabindex="30" size="25" value="" name="password" placeholder="输入8位密码" /></label> </p> <p> <label for="repeat_password"><?php _e( '确认密码', 'ugp-domain' );?><br/> <input id="repeat_password" class="input" type="password" tabindex="40" size="25" value="" name="repeat_password"placeholder="再次输入密码" /></label> </p>
添加完了之后保存到wp-login.php,我们来看一下效果图
主题修改
我们这里已经修改完了,接下来修改主题文件里面的主要文件functions.php,然后拉到最下面,放在 ?> 这个符号的前面即可。代码如下:
//自定义注册页面 add_action( 'register_post', 'ts_check_extra_register_fields', 10, 3 ); function ts_check_extra_register_fields($login, $email, $errors) { if ( $_POST['password'] !== $_POST['repeat_password'] ) { $errors->add( 'passwords_not_matched', "<strong>提示</strong>: 两次输入的密码不一致,请重新输入。" ); } if ( strlen( $_POST['password'] ) < 8 ) { $errors->add( 'password_too_short', "<strong>提示</strong>: 密码最少要输入8位,请重新输入密码。" ); } } add_action( 'user_register', 'ts_register_extra_fields', 100 ); function ts_register_extra_fields( $user_id ){ $userdata = array(); $userdata['ID'] = $user_id; if ( $_POST['password'] !== '' ) { $userdata['user_pass'] = $_POST['password']; } $new_user_id = wp_update_user( $userdata ); } add_filter( 'gettext', 'ts_edit_password_email_text' ); function ts_edit_password_email_text ( $text ) { if ( $text == 'A password will be e-mailed to you.' ) { $text = 'If you leave password fields empty one will be generated for you. Password must be at least eight characters long.'; } return $text; }
转自:http://www.buyworkt.com/wp/plugins/396.html