Изменение меток в wp-login.php: замена "Username" на "Email"

19 дек. 2012 г., 17:50:15
Просмотры: 16.7K
Голосов: 4

Как можно изменить метки формы wp-login.php?

Я использую email для входа, поэтому мне нужно заменить username на email.

Ответ по этой ссылке кажется устаревшим или просто не работает с SSL: Функция для изменения метки (Username) в основном файле WordPress (wp-includes/general-template.php)

Я попробовал это в своем файле функций, но это не сработало:

// Функция для изменения метки "Username" на "Email"
function wpse60605_change_username_label( $defaults ) {
    $defaults['label_username'] = __( 'Email' );
    return $defaults;
}
// Добавляем фильтр для формы входа
add_filter( 'login_form_defaults', 'wpse60605_change_username_label' );
1
Комментарии

https://stackoverflow.com/a/48502233/7186739

Muhammad Bilal Muhammad Bilal
5 апр. 2018 г. 11:14:51
Все ответы на вопрос 4
1

Нашел это здесь: https://wordpress.org/support/topic/how-to-change-the-text-labels-in-userpass-box-on-login-page/

Другие решения не сработали, но это помогло.

На всякий случай, если кому-то пригодится.

add_filter( 'gettext', 'register_text' );
add_filter( 'ngettext', 'register_text' );
function register_text( $translated ) {
    $translated = str_ireplace(
        'Username or Email Address',
        'Ваш собственный текст',
        $translated
    );
    return $translated;
}
10 мар. 2017 г. 18:31:07
Комментарии

Как и для Carole, вышеуказанный (выбранный ответ) не сработал для меня. Но вот это сработало! (WordPress версия 4.7.x).

seveninstl seveninstl
7 нояб. 2017 г. 07:36:50
1

Нашел ответ на stackoverflow вскоре после публикации этого вопроса:

https://stackoverflow.com/questions/12825865/change-wordpresss-login-label-username

Используется фильтр gettext вместо каких-либо функций WordPress

19 дек. 2012 г. 17:55:36
Комментарии

Простое решение: https://stackoverflow.com/questions/12825865/change-wordpresss-login-label-username/48502233#48502233

Muhammad Bilal Muhammad Bilal
21 сент. 2020 г. 11:15:54
0

Попробуйте это

add_filter( 'gettext', 'register_text' );
add_filter( 'ngettext', 'register_text' );
function register_text( $translating ) {
     $translated = str_ireplace( 'Username or Email Address', 'Ваш текст', $translating );
     return $translated;
}
27 дек. 2017 г. 13:54:38
0

Помимо изменения экрана входа, я хотел удалить поле "Имя пользователя" из формы добавления нового пользователя в админке. Этот код, добавленный в functions.php, помог решить задачу:

function hide_username_field(){
    // Скрываем поле имени пользователя в форме добавления нового пользователя в админке
    echo "\n" . '<script type="text/javascript">jQuery(document).ready(function($) {
        $(\'input#user_login\').parent().parent().hide();
        $(\'input#email\').change(function() {
            $(\'input#user_login\').val($(\'input#email\').val());
        });
    }); 
    </script>' . "\n";
}
add_action('admin_head','hide_username_field');
20 янв. 2020 г. 02:15:39