我最近尝试在我的网站前端添加一个用户注册表单,并使用了以下表单代码(基于this 我在回答中发现maugly 有疑问Front-end Register Form) 在模板文件中:
<div id="tab2_login" class="tab_content_login" >
<h3>Add a child</h3>
<form method="post" action="<?php echo site_url(\'wp-login.php?action=register\', \'login_post\') ?>" class="wp-user-form">
<div class="username">
<label for="user_login"><?php _e(\'Child Name\'); ?>: </label>
<input type="text" name="user_login" value="<?php echo esc_attr(stripslashes($user_login)); ?>" size="20" id="user_login" />
</div>
<div class="email">
<input type="text" name="user_email" value="<?php echo esc_attr(stripslashes($user_email)); ?>" size="25" id="user_email" />
</div>
<div class="login_fields">
<?php do_action(\'register_form\'); ?>
<input type="submit" name="user-submit" value="add child" class="user-submit" />
<?php
$register = $_GET[\'register\'];
if($register == true) {
//now add it to the link database
echo \'<p>User Added!</p>\';
} ?>
<input type="hidden" name="redirect_to" value="<?php echo $_SERVER[\'REQUEST_URI\']; ?>?register=true" />
<input type="hidden" name="user-cookie" value="1" />
</div>
</form>
</div>
Theredirect_to
属性在这里被设置为请求页面,当它通过触发if块来显示额外的成功消息来工作时,这一切都很好。我的问题是何时在中检测到错误wp-login.php
(例如用户名已在使用)如何使重定向返回到此页面,而不是wp login生成的登录框/错误显示?我看不到任何明显的钩子可以抓住(虽然我还没有使用过动作,所以可能会遗漏一些东西!)
非常感谢您的帮助和指导!
瑞安