在默认的Wordpress“忘记密码页面”上更改标签

时间:2013-11-04 23:19:33

标签: wordpress

我正在尝试更改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在丢失的密码表单上将“电子邮件”拼写为“电子邮件”,但没有其他表格上的破折号......

1 个答案:

答案 0 :(得分: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;
  }

}