4

在默认的 WordPress 登录页面上,如何将标签“用户名”更改为其他内容?

4

4 回答 4

26

我认为这是对先前答案的更好选择。

function login_function() {
    add_filter( 'gettext', 'username_change', 20, 3 );
    function username_change( $translated_text, $text, $domain ) 
    {
        if ($text === 'Username') 
        {
            $translated_text = 'customLoginName';
        }
        return $translated_text;
    }
}
add_action( 'login_head', 'login_function' );
于 2012-10-10T21:36:33.920 回答
11

简单而简短的解决方案

add_filter(  'gettext',  'register_text'  );
function register_text( $translating ) {
    $translated = str_ireplace(  'Username or Email Address',  'Your Custom Text',  $translating );
    return $translated;
}
于 2018-01-29T13:19:04.097 回答
1

它对我有用。使用此 functions.php 代码,您可以更改任何文本。

add_filter(  'gettext',  'register_text'  );
function register_text( $translating ) {
    $translated = str_ireplace(  'Username or Email Address',  'Your Custom Text',  $translating );
    return $translated;
}

感谢@Mohammad Bilal

于 2020-12-17T17:16:13.187 回答
0

最近我遇到了同样的情况,虽然我需要把翻译的字符串来改变这个登录标签,我以前尝试使用 jQuery 但没有奏效,所以我使用 javascript 如下:

function login_script_function() {
?>
<script type="text/javascript">

window.addEventListener('DOMContentLoaded', (event) => {
    console.log('DOM fully loaded and parsed'); // to test DOM ready
    var label_user_login = document.getElementsByTagName('label')[0];
    var label_user_pass = document.getElementsByTagName('label')[1];
    label_user_login.innerText = "<?php _e('User Name', 'text-domain'); ?>";
    label_user_pass.innerText = "<?php _e('Password', 'text-domain'); ?>";
});
</script>
<?php
}
add_action( 'login_head', 'login_script_function' );

我将它与自定义插件一起使用,并使用例如PoeditLoco Translate添加字符串翻译

于 2020-06-09T19:49:28.357 回答