看了一下问题,但是找不到类似的问题。

我需要更改用户尝试使用错误的用户名或密码登录时显示的自定义错误消息。

,将其更改为:“错误:您为用户名%1 $ s输入的密码不正确。忘记了密码?”对于此“错误信息”(仅作为示例)

我尝试使用“ add_filter”,但我不熟悉它,因此,将不胜感激!谢谢

评论

值得一提的是,user20986上面的评论是垃圾邮件。它带您到一个页面,该页面告诉您您的Flash软件已过期,需要更新。建议管理员按user20986删除评论

#1 楼

您可以使用login_errors过滤器挂钩来做到这一点,方法如下:

add_filter('login_errors','login_error_message');

function login_error_message($error){
    //check if that's the error you are looking for
    $pos = strpos($error, 'incorrect');
    if (is_int($pos)) {
        //its the right error so you can overwrite it
        $error = "Wrong information";
    }
    return $error;
}


更新:

我刚刚测试了代码,并且工作正常将代码粘贴到主题的functions.php文件中,而无需使用.po文件进行任何更改



评论


只是为了使所有内容都清楚,我应该用错误字符串替换“ incorrect”?顺便说一句,谢谢您的回答!

–Vitor Argos
2011年8月5日在22:07

只是尝试过这种方法,它不起作用,但是我不确定wordpress .po文件是否覆盖了文本。有任何想法吗?

–Vitor Argos
2011年8月5日在22:10

来自WordPress.po的文本是在触发该过滤器挂钩之前提供的,并且您不必更改不正确,它会检查错误消息是否包含该单词。

–互联网
2011年8月5日在22:15

我试图使它起作用,但是我做不到。我实际上甚至试图删除条件部分,因此它应该在$ error变量中返回文本,对吗?但这没有效果。挖掘.po文件后,我看到要覆盖的消息位于wp-includes / user.php文件中,例如:“ 错误:用户名字段为空”。

–Vitor Argos
2011年8月5日在22:37

@Vitor,您做错了什么,没有必要触摸.po文件,我更新了答案。

–互联网
2011年8月6日,0:03