如何创建一个函数来修改wp-login.php文件中的消息?

时间:2021-01-27 作者:Dalen

当用户使用WordPress中的密码重置功能时,会要求他们输入电子邮件并单击确认。这样做之后,他们得到的信息是:

检查电子邮件中的确认链接,然后访问登录页面。

我希望修改此消息,并且我已经找到了在wp登录中写入消息的代码行。php文件:

if ( \'confirm\' === $_GET[\'checkemail\'] ) {
  $errors->add(
    \'confirm\',
    sprintf(
      /* translators: %s: Link to the login page. */
      __( \'Check your email for the confirmation link, then visit the <a href="%s">login page</a>.\' ),
      wp_login_url()
    ),
    \'message\'
  );
}
在那里更改消息效果很好,但我认为一旦WordPress更新它就会被覆盖,这是正确的吗?如果是,我的问题是:

我是否可以使用一个可以放入主题功能中的功能来修改此消息。php文件,以便它不会被未来的WP更新覆盖?

能给我的新留言翻译一下吗?如果我在/wp-content/languages文件夹中编辑翻译文件,我假设它也会被更新覆盖?

1 个回复
最合适的回答,由SO网友:Q Studio 整理而成

如果没有过滤器来更改内容,另一个选项是添加一个连接到的函数gettext - 例如:

/**
 * Change text strings
 *
 * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/gettext
 */
function wpse_382257_text_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case \'Check your email for the confirmation link, then visit the login page.\' :
            $translated_text = __( \'SOMETHING ELSE\', \'text-domain\' );
            break;
        
        case \'Another\' :
            $translated_text = __( \'Whatever..\', \'text-domain\' );
            break;
    }
    return $translated_text;
}
add_filter( \'gettext\', \'wpse_382257\', 20, 3 );
参考号:https://developer.wordpress.org/reference/hooks/gettext/

相关推荐

警告:使用未定义的常量HTTP_USER_AGENT-假定为‘HTTP_USER_AGENT’(这将在未来的PHP版本中引发错误)

我对这一点还不熟悉,我需要帮助找出如何修复此错误:警告:在第1行的/home/trewonco/public\\u html/zwp-t0bsb中使用了未定义的常量HTTP\\u USER\\u AGENT-假定为“HTTP\\u USER\\u AGENT”(这将在PHP的未来版本中引发错误)这似乎是在我将变更从临时站点推送到实时站点之后发生的,有人知道为什么会发生这种情况以及如何修复它吗?非常感谢你的帮助。