Intereting Posts
Сайт возвращает ошибку внутреннего сервера 500 Активация учетной записи пользователя WordPress Сохранение типов и полей пользовательских сообщений в пользовательской таблице Отображение страниц на странице категории приводит к страницам примеров Понимание и использование did_action () в условном выражении Предупреждать пользователя о том, что данные могут быть потеряны для пользовательских страниц Игнорировать postname в permalink Как сканировать штрих-код и хранить данные в базе данных Как узнать, использует ли мой сайт файл xmlrpc.php? Как WordPress понимает, что делать с (все) ключом в массиве $ wp_filter? Добавить возможности загрузки файлов, необходимые для пользовательской роли для не-сообщений post-> ID отображает тот же идентификационный номер для каждого сообщения Открытая должность в рамках Фонда 3 создать пользовательский столб храма для плагина if / else по пользовательскому запросу дает 200 OK, если условие не выполнено?

Пользователи – снимите флажок «Отправить пароль»

Есть ли рекомендуемый метод удаления флажка «Отправить пароль» при управлении пользователями в администраторе WordPress? Или, альтернативно, способ изменения пользователей к изменениям, которые не связаны с отправкой почты паролем в виде обычного текста?

Благодаря,

Тоби

Solutions Collecting From Web of "Пользователи – снимите флажок «Отправить пароль»"

Вот несколько идей о том, как бороться с нейтрализацией части « Отправить пароль» на странице /wp-admin/user-new.php :

отправить пропуск

Идея 1:

Мы можем перезаписать wp_new_user_notification() , потому что она подключается :

Попробуйте, например:

 if ( ! function_exists( 'wp_new_user_notification' ) ): function wp_new_user_notification($user_id, $plaintext_pass = '') { $user = get_userdata( $user_id ); // The blogname option is escaped with esc_html on the way into the database in sanitize_option // we want to reverse this for the plain text arena of emails. $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES); $message = sprintf(__('New user registration on your site %s:'), $blogname) . "\r\n\r\n"; $message .= sprintf(__('Username: %s'), $user->user_login) . "\r\n\r\n"; $message .= sprintf(__('E-mail: %s'), $user->user_email) . "\r\n"; @wp_mail(get_option('admin_email'), sprintf(__('[%s] New User Registration'), $blogname), $message); if ( empty($plaintext_pass) ) return; // Let's remove this user notification part: /* $message = sprintf(__('Username: %s'), $user->user_login) . "\r\n"; $message .= sprintf(__('Password: %s'), $plaintext_pass) . "\r\n"; $message .= wp_login_url() . "\r\n"; wp_mail($user->user_email, sprintf(__('[%s] Your username and password'), $blogname), $message); */ endif; 

если вы не хотите уведомлять пользователя, независимо от настроек « Отправить пароль» .

Здесь мы просто удалили код, который отправляет пользователю уведомление.

Идея 2:

Попробуем удалить настройки Send Password , show_password_fields фильтр show_password_fields :

 add_action( 'load-user-new.php', function(){ add_filter( 'show_password_fields', function( $show ){ ?> <tr class="form-field form-required"> <th scope="row"><label for="pass1"><?php _e('Password'); ?> <span class="description"><?php /* translators: password input field */_e('(required)'); ?></span></label></th> <td> <input class="hidden" value=" " /><!-- #24364 workaround --> <input name="pass1" type="password" id="pass1" autocomplete="off" /> </td> </tr> <tr class="form-field form-required"> <th scope="row"><label for="pass2"><?php _e('Repeat Password'); ?> <span class="description"><?php /* translators: password input field */_e('(required)'); ?></span></label></th> <td> <input name="pass2" type="password" id="pass2" autocomplete="off" /> <br /> <div id="pass-strength-result"><?php _e('Strength indicator'); ?></div> <p class="description indicator-hint"><?php _e('Hint: The password should be at least seven characters long. To make it stronger, use upper and lower case letters, numbers, and symbols like ! " ? $ % ^ &amp; ).'); ?></p> </td> </tr> <?php return FALSE; }); }); 

Идея 3:

Мы можем попытаться скрыть его с помощью CSS, например:

 add_action( 'load-user-new.php', function(){ add_action( 'admin_head', function(){ ?><style>#createuser .form-table tr:nth-of-type(9){ display:none; }</style><?php }); }); 

если у вас нет дополнительных полей пользователя, в противном случае нам, возможно, придется отрегулировать часть tr:nth-of-type(9) .

Идея 4:

Используйте javascript для его удаления или отключения.

Идея 5:

Вы также можете попытаться $_POST['send_password'] часть $_POST['send_password'] в submit, прежде чем она войдет в функцию wp_new_user_notification :

 wp_new_user_notification( $user_id, isset( $_POST['send_password'] ) ? wp_unslash( $pass1 ) : '' ); 

Идея 6:

Это теоретическое и просто для удовольствия:

Используйте буферизацию вывода на странице /wp-admin/user-new.php и замените нежелательные блоки HTML 😉