Você está procurando uma maneira de restringir o acesso ao painel para usuários? Embora provavelmente exista um plugin para isso, criamos um trecho de código rápido que você pode usar para restringir o acesso ao painel para 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:
function baw_no_admin_access()
{
if( !current_user_can( 'administrator' ) && stristr( $_SERVER['REQUEST_URI'], '/wp-admin' ) !== false ) {
wp_redirect( home_url() );
die();
}
}
add_action( 'init', 'baw_no_admin_access', 1 );
Este código restringirá qualquer usuário, exceto o administrador, de entrar no seu painel do WordPress.
Observação: Se esta é a sua primeira vez adicionando trechos de código no WordPress, consulte nosso guia sobre como adicionar 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 WordPress para igrejas para expandir o rebanho e como usar o Google Optimize no WordPress.
function baw_no_admin_access()
{
if( !current_user_can( ‘administrator’) && stristr( $_SERVER[‘REQUEST_URI’], ‘/wp-admin’ ) !== false ) {
wp_redirect( home_url() );
die();
}
add_action( ‘init’, ‘baw_no_admin_access’, 1 );
Neste código, como posso adicionar outro usuário junto com o administrador?
Sou muito grato a vocês, queridos usuários.
Isso também impede que meus usuários façam logout. Eles continuam sendo redirecionados para a página inicial e não conseguem fazer logout
Isso ainda funciona para o WordPress 5.4?
Deveria funcionar. Você está recebendo mensagens de erro?
com esta função você também bloqueia requisições ajax. Melhor adicionar
&& !( defined( ‘DOING_AJAX’ ) && DOING_AJAX )
Talvez eu tenha entendido mal o comentário, mas geralmente você não quer que o AJAX no admin funcione se o usuário não estiver logado e se você estiver bloqueando-o da área administrativa.