当用户登录自定义登录页面时,向用户提供一些反馈

时间:2013-04-12 作者:fightstarr20

我有一个下拉菜单,其中包含我的自定义登录框。。。

<form name="loginform" id="loginform" action="<?php echo bloginfo(\'url\') ?>/wp-login.php" method="post">
    <p class="login-username">
        <input placeholder="email address" type="text" style="text-align:right;" name="log" id="user_login" class="input" value="" size="20" />
    </p>
    <p class="login-password">
        <input placeholder="password" type="password" style="text-align:right;" name="pwd" id="user_pass" class="input" value="" size="20" />
    </p>
    <input type="submit" name="wp-submit" id="wp-submit" value="Login" /><input type="hidden" name="redirect_to" value="<?php $_SERVER[\'REQUEST_URI\']; ?>" />
</form>
这很有效,如果有人在框中没有输入任何内容并按submit或输入不正确的详细信息,他们会被带到www.mydomain的自定义登录页面。com/登录

这一切都很好,但我需要做的是给用户一些指示,说明他们为什么会登陆此页面,并显示一个消息框,上面写着“错误的详细信息,请重试”

有人知道我会怎么做吗?

2 个回复
SO网友:Nikki Mather

你有很多选择。

其中两个可能是:;

1) 阻止用户被重新定向到/登录,并使用jQuery在输入详细信息的页面上警告用户其登录信息不正确。

2) 您可以让他们重新定向到/login页面并编辑/wp登录。php文件添加一块HTML(这将告诉用户他们输入的详细信息不正确),并使用CSS设置样式。

SO网友:Ralf912

只需在自定义登录表单中使用隐藏字段:

<input type="hidden" name="custom-login" value="1" />
并连接到wp登录表单(页眉、页脚或表单本身):

add_action( \'login_head\', \'failed_login_message\', 10, 0 ); // display message at top of page
// add_action( \'login_footer\', \'failed_login_message\', 10, 0 ); // display at bottom of page
// add_action( \'\'login_form_login\', \'failed_login_message\', 10, 0 ); // display message WITHIN the form

function failed_login_message() {
  // bail if the user does not come from the custom login form
  if ( ! isset( $_POST[\'custom-login\'] ) || true != $_POST[\'custom-login\'] )
    return false;

  echo \'<p class="error">Something went wrong. Your login data wasn\\\'t correct. Try again.</p>\';

  return true;
}

结束

相关推荐

让用户从wp-login.php直接登录到站点主页,而不是仪表板

我目前正在使用一个名为Sidebar Login 它允许用户绕过仪表板直接访问站点。但是,当用户通过/wp-login.php (例如,当他们在电子邮件中单击验证链接时),他们会再次被发送到仪表板。我希望用户能够点击他们的验证链接,并将他们定向到网站主页,在那里他们可以通过我设置的侧边栏登录登录。这可能吗?