Добавить триггер к роли пользователя WordPress, выбрать ИЛИ запустить JS при изменении - PullRequest
0 голосов
/ 22 января 2019

Я создал пользовательскую роль пользователя, и мне нужно обнаруживать изменения при создании нового пользователя, если для роли установлена ​​lessee. Если есть способ добавить триггер в WordPress, создающий с использованием filter или action, который будет работать, или для обнаружения изменений в JS с помощью event listener.

У меня есть id этого select, и мне просто нужно определить, когда он изменится на lessee, чтобы запустить пользовательскую функцию JS.

<select name="role" id="role">
 <option value="lessee">Lessee</option>
 <option selected="selected" value="subscriber">Subscriber</option>
 <option value="contributor">Contributor</option>
 <option value="author">Author</option>
 <option value="editor">Editor</option>
 <option value="administrator">Administrator</option>            
</select>

Любая помощь очень ценится!

1 Ответ

0 голосов
/ 22 января 2019

Вы можете использовать крючок set_user_role(). Источник.

Эта ловушка сработает при изменении роли пользователя. Вы можете условно написать логику, которая будет выполняться только в том случае, если роль, с которой пользователь был изменен ОТ, является «арендатором», проверив, была ли эта роль в массиве $old_roles

.
add_action( 'set_user_role', 'custom_user_change_function', 10, 3 );

function custom_user_change_function( $user_id, $role, $old_roles ) 
{
    if(in_array('lessee', $old_roles)){
       //your code
    }
}
...