Como desconectar ou um usuário WordPress a partir da seção de cookies da janela atual?

Picture of Ivon Filho

Ivon Filho

Procurando desenvolvedor freelancer para seu projeto?

Muitas vezes há necessidade, por segurança ou exigência do projeto, forçar a desconexão de um usuário. Eis o código a ser adicionado, ou no arquivo functions.php, ou em algum plugin:

// DESCONECTA QUALQUER USUÁRIO DEPOIS DE 4 HORAS

add_action( 'wp_enqueue_scripts', 'enqueue_logout_script' );
function enqueue_logout_script() {
if( is_user_logged_in() && !current_user_can( 'administrator' ) ) {
wp_enqueue_script( 'jquery' );
$logout_script = '
jQuery(document).ready(function($) {
setTimeout(function() {
$.post("' . admin_url( 'admin-ajax.php' ) . '", { action: "logout_now" }, function(response) {
if (response.success) {
alert("Sua sessão expirou. Você será desconectado agora.");
window.location.href = "' . home_url() . '";
}
});
}, 14400000); // 14400000 ms = 4 horas
});';
wp_add_inline_script( 'jquery', $logout_script );
}
}

add_action( 'wp_ajax_logout_now', 'logout_now' );
function logout_now() {
wp_logout();
wp_send_json_success();
wp_die();
}
Rolar para cima