post

Criar uma lista de usuarios para login rapido com User Switching, ACF e WordPress

Publicado em: 02/11/2022 / Atualizado em: 02/11/2022

Categorias: ACF (Advanced Custom Fields)BlogPluginsWordpress

Abaixo um exemplo de código usando os plugins User Switching e ACF PRO para trazer usuários relacionados a outro usuário:

<?php
    $array_clientes_rep = get_field('usuarios_do_representante', 'user_'. get_current_user_id());
    //var_dump($array_clientes_rep); 
    //echo json_encode($array_clientes_rep);

	if ( method_exists( 'user_switching', 'get_old_user' ) ) {
		$old_user = user_switching::get_old_user();
		if ( $old_user ) {
			printf(
				'<a class="et_pb_button et_hover_enabled" href="%1$s">Voltar para %2$s</a>',
				esc_url( user_switching::switch_back_url( $old_user ) ),
				esc_html( $old_user->display_name )
			);
		}
	}
    
    if($array_clientes_rep[0]) { ?>

<p> <strong>Clientes relacionados:</strong> </p>
<?php   
    foreach($array_clientes_rep as $cliente_rep) { ?>
        <div class="box_cliente_rep">
            <div class="box_cliente_rep_icone">
                <i class="fa-regular fa-user" style="font-family: FontAwesome;font-style: normal;"></i>
            </div>
            <div class="box_cliente_rep_info">
                <p>
                    <span class="nome"><?= $cliente_rep['user_firstname'] ?></span> <br>
                    <span class="email"><?= $cliente_rep['nickname'] ?></span>
                </p>
            </div>
            <div class="box_cliente_rep_login">
                <?php if ( method_exists( 'user_switching', 'maybe_switch_url' ) ) {
						$url = user_switching::maybe_switch_url( get_user_by( 'id', $cliente_rep['ID'] ) );
						if ( $url ) {
							printf(
								'<a href="%1$s">Logar</a>',
								esc_url( $url ),
								esc_html( $target_user->display_name )
							);
						}
					} ?>
            </div>
        </div>
        
<style>
.box_cliente_rep {
    display: flex;
    align-items: center;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 10px rgb(0 0 0 / 7%);
    margin: 10px auto;
    padding: 10px 20px;
    border: 1px solid #eee;
}

.box_cliente_rep > div:nth-child(1) {
    width: 8%;
}

.box_cliente_rep > div:nth-child(2) {
    width: 82%;
}

.box_cliente_rep > div:nth-child(3) {
    width: 10%;
}

.box_cliente_rep_info .nome {
    font-weight: bold;
}

.box_cliente_rep_info {
    font-size: 12px;
    line-height: 18px;
}

</style>
    <?php } }
?>




<style>
#user_switching_switch_on {
	display: none !important;
}
</style>

Configurações do campo no ACF:

Publicações recomendadas:


Inscreva-se em Nossa News:

Seja notificando sempre que tiver conteúdo novo disponível no meu canal do Youtube ou artigo no meu Blog.

Bruno Devs News


Link Curto para Compartilhamento

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.

bruno.art.br/pb/2112

ID de Referência: 2112

Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato


Comentários