0

我正在尝试更改 Wordpress 丢失密码表单的默认标签,其中显示“用户名或电子邮件”。我需要它来阅读“电子邮件”并且我不想编辑任何核心 Wordpress 文件。我已经使用以下默认登录表单实现了这一点:

global $pagenow; 
if ($pagenow==='wp-login.php') { 
  add_filter( 'gettext', 'user_email_login_text', 20, 3 );

  function user_email_login_text( $translated_text, $text, $domain ) {
    if ($translated_text === 'Username') {
        echo $translated_text;
        $translated_text = 'Email';
    }

    return $translated_text;
  }

}

这似乎也适用于由单个单词组成的标签的其他默认形式。但是,如果我增加if条件以包含| $translated_text === 'Username or e-mail'它不起作用。

有任何想法吗?我真的不想编写一个定制的表格,因为这不适合我的系统的工作方式。

另外,我想知道为什么 Wordpress 在丢失的密码表单上将“电子邮件”拼写为“电子邮件”,但在所有其他表单上都没有破折号......

4

1 回答 1

0

我不知道你是否已经解决了这个问题。无论如何,您的代码都是正确的。您只是错过了字符串区分大小写并包含冒号。像这样:if ($translated_text === 'Username or E-mail:')

$translated_text也不需要回声

这适用于我的安装:

global $pagenow; 
if ($pagenow==='wp-login.php') { 
  add_filter( 'gettext', 'user_email_login_text', 20, 3 );
  function user_email_login_text( $translated_text, $text, $domain ) {
    if ($translated_text === 'Username or E-mail:') {

        $translated_text = 'Email';
    }

    return $translated_text;
  }

}
于 2014-01-22T23:56:05.073 回答