Você está procurando uma maneira de permitir que o administrador bloqueie contas de usuários do WordPress? Embora provavelmente exista um plugin para isso, criamos um snippet de código rápido que você pode usar para bloquear contas de usuários no WordPress.
Instruções:
Tudo o que você precisa fazer é adicionar este código ao arquivo functions.php do seu tema ou a um plugin específico do site:
// display checkbox to admin
add_action( 'edit_user_profile', 'ban_user_profile_fields' );
function ban_user_profile_fields( $user ) {
global $current_user;
if ( current_user_can( 'edit_user' ) && $user->ID != $current_user->ID ){
$status = get_the_author_meta( 'ban_user', $user->ID );
?>
<h3><?php _e("Account Status", "blank"); ?></h3>
<table class="form-table">
<tr>
<th>Ban User</th>
<td><label for="ban_user"><input type="checkbox" name="ban_user" id="ban_user" value="1" <?php if($status == 1){ echo ' checked'; } ?> /></label>
<span class="description"><?php _e("Check this option to ban this users account."); ?></span>
</td>
</tr>
</table>
<?php
}
}
// Save profile update
add_action( 'edit_user_profile_update', 'save_extra_user_profile_fields' );
function save_extra_user_profile_fields( $user_id ){
if ( !current_user_can( 'edit_user', $user_id ) ) { return false; }
update_usermeta( $user_id, 'ban_user', $_POST['ban_user'] );
}
// Check if user is banned
add_filter( 'wp_authenticate_user', 'login_ban_status', 1 );
function login_ban_status($user) {
if ( is_wp_error( $user ) ) { return $user; }
$status = get_user_meta( $user->ID, 'ban_user', 'true' );
if($status == 1){
return new WP_Error( 'banned', __('<strong>ERROR</strong>: This user account has been banned.', 'banned') );
}
return $user;
}
Observação: Se esta é a primeira vez que você adiciona trechos de código no WordPress, consulte nosso guia sobre como copiar / colar trechos de código corretamente no WordPress, para não quebrar acidentalmente seu site.
Se você gostou deste trecho de código, considere conferir nossos outros artigos no site, como: 20 melhores temas de igreja WordPress para expandir a congregação e como usar o Google Optimize no WordPress.
Comentários Deixe uma resposta