В продолжении темы о требованиях ФЗ 152 «О защите персональных данных» сегодня мы рассмотрим как добавить в форму регистрации флажок о согласии с правилами сайта.
Материалы на эту же тему:
Нам потребуется добавить два обработчика в тему оформления сайта (файл functions.php). Первый из них добавляет HTML код поля с галочкой и ссылками на соглашения, которые нужно предварительно создать и разместить на сайте. Второй обработчик будет выполнять проверку установлен ли флажок при отправке данных пользователем.
Объявляем зацепки:
|
add_action( 'register_form', 'regform_useragreeemnet_flag' ); add_filter( 'registration_errors', 'regform_useragreeemnet_check', 10, 3 ); |
Формируем HTML код флажка. В описании содержится также ссылка на пользовательское соглашение.
|
function regform_useragreeemnet_flag() { $ch = empty($_POST['user_agree']) ? '' : 'checked'; ?> <p> <label for="user_agreement"> <input type="checkbox" name="user_agree" id="user_agreement" class="input" value="1" <?=$ch?> /> Нажимая кнопку «Регистрация», я принимаю условия <a href="/polzovatelskoe-soglashenie" target="_blank"> Пользовательского соглашения</a>. </label> </p> <?php } |
Проверяем, поставил ли пользователь галочку.
|
function regform_useragreeemnet_check( $errors, $sanitized_user_login, $user_email ) { if (empty($_POST['user_agree'])) $errors->add( 'agreement_error', '<strong>Ошибка</strong>: Для регистрации необходимо ознакомиться и принять условия соглашения.'); return $errors; } |
В общем, это стандартный способ добавления каких-либо полей в форму регистрации в WP.
Написать комментарий
Данная запись опубликована в 16.08.2017 15:07 и размещена в рубрике wordpress.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 15, 2016 г.
Этот проект на Wordpress мне достался на доработку. Я не часто занимаюсь сайтами на WP, есть тому причины, но рынок диктует свои правила. Огромное число ...
Читать
Июнь 6, 2018 г.
Это продолжение статьи о сохранении данных формы WPCF7, где я рассказал о том зачем это может понадобиться и подходе к реализации. Здесь мы перейдем уже более техническим вещам, к коду.
Итак, нам необходимо создать публикацию на основе данных, ...
Читать
Подскажите пожалуйста, а как сделать так что бы строка не выводилась когда пользователь авторизован?
Вы можете использовать функцию is_user_logged_in() для проверки авторизован пользователь или находится на сайте анонимно.