2012-06-13 1 views
1

Не удается найти, где добавить подтверждение для флажка в форме ввода Wordpress. У меня есть дополнительная настройка флажка под названием «термины», которые мне нужны для проверки пользователем каждый раз, когда они хотят войти.Добавить флажок в форму ввода Wordpress - Условия использования

Проблема в том, что я не могу остановить запись в Wordpress, если они не проверяют ее. Где это код входа.

Существует также установленный плагин, который может усложнять вопросы, называемые ими - мой-логин.

У меня есть весь код передо мной, просто скажите мне, что я ищу.

ответ

0

Я знаю, что это довольно старая, но я просто наткнулся на него и был в состоянии смотреть на Codex и выработать решение. Надеюсь, это поможет кому-то. Спасибо @Jason за то, что он указал в правильном направлении.

Этот код необходимо будет добавлен в functions.php файл вашей темы:

<?php 

// As part of WP authentication process, call our function 
add_filter('wp_authenticate_user', 'wp_authenticate_user_acc', 99999, 2); 

function wp_authenticate_user_acc($user, $password) { 
    // See if the checkbox #login_accept was checked 
    if (isset($_REQUEST['login_accept']) && $_REQUEST['login_accept'] == 'on') { 
     // Checkbox on, allow login 
     return $user; 
    } else { 
     // Did NOT check the box, do not allow login 
     $error = new WP_Error(); 
     $error->add('did_not_accept', 'You must accept the terms and conditions'); 
     return $error; 
    } 
} 

// As part of WP login form construction, call our function 
add_filter ('login_form', 'login_form_acc'); 

function login_form_acc(){ 
    // Add an element to the login form, which must be checked 
    echo '<label><input type="checkbox" name="login_accept" id="login_accept" /> I agree</label>'; 
} 
Смежные вопросы