Текст с открытым исходным текстом отображается разблокированным во время загрузки страницы

Мне нужна помощь с кодом для блокировки редактирования ввода текста типа на странице профиля WordPress.

Я добавил следующий код:

(function(){ $("#email").attr("readonly","readonly"); }); 

Но пока страница загружается, поле открывается разблокированным, и если пользователь нажимает «Esc», загрузка страницы останавливается, и он может редактировать поле.

Есть ли способ избежать этого?

Solutions Collecting From Web of "Текст с открытым исходным текстом отображается разблокированным во время загрузки страницы"

Установка ввода в «только чтение» любыми способами, с использованием Javascript или PHP или с жесткой кодировкой, имеет нулевое значение безопасности. Тривиально удалить эту «блокировку» с помощью FireBug или расширения веб-разработчика, и я также уверен в других. То, что вы делаете, в лучшем случае является косметическим.

Если вы хотите запретить изменение адреса электронной почты пользователя, вам придется поймать edit_user_profile_update формы с помощью (возможно, перехвата personal_options_update и / или edit_user_profile_update и заставить электронное письмо оставаться таким же, как и в базе данных). Что-то вроде этого:

 function lock_user_email_wpse_100146($userid) { $user = get_userdata($userid); if (isset($_POST['email'])) { $_POST['email'] = $user->user_email; } } add_action('personal_options_update','lock_user_email_wpse_100146'); 

Я предостерегаю вас от этого, поскольку это мешает пользователям изменять свои адреса электронной почты , и люди меняют адреса электронной почты. Если вы это сделаете, а кто-то изменит адрес, этот человек больше не сможет сбросить свой пароль. Это очень недружелюбная вещь, с которой нужно вмешиваться.