在默认的 WordPress 登录页面上,如何将标签“用户名”更改为其他内容?
我认为这是比之前的答案更好的替代方案。
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' );
简单且简短的解决方案
add_filter( 'gettext', 'register_text' );
function register_text( $translating ) {
$translated = str_ireplace( 'Username or Email Address', 'Your Custom Text', $translating );
return $translated;
}
这对我有用。使用此functions.php代码您可以更改任何文本。
add_filter( 'gettext', 'register_text' );
function register_text( $translating ) {
$translated = str_ireplace( 'Username or Email Address', 'Your Custom Text', $translating );
return $translated;
}
最近我遇到了同样的情况,虽然我需要输入翻译后的字符串来更改此登录标签,但我之前尝试使用 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' );
我将其与自定义插件一起使用,并添加字符串翻译,例如Poedit 或 Loco Translate
将此添加到functions.php代码中,您可以更改用户名和密码的标签。更不用说您可以根据您的需要设计标签的样式。例如,您可以将其设置为粗体或更改浮动和其他基于 CSS 的内容。
add_action('login_enqueue_scripts', 'customize_login');
function customize_login() { ?>
<style type="text/css">
body.login div#login form#loginform label[for=user_login] {
visibility: hidden;
}
body.login div#login form#loginform label[for=user_login]::after {
content: 'YOUR NEW USERNAME LABEL' !important;
visibility: visible;
/* font-weight: bold; */
}
body.login div#login form#loginform label[for=user_pass] {
visibility: hidden;
}
body.login div#login form#loginform label[for=user_pass]::after {
content: 'YOUR NEW PASSWORD LABEL' !important;
visibility: visible;
/* font-weight: bold; */
}
</style>
<?php } ?>