Cómo añadir imagen de usuario con ACF

Pues sí, con Advanced Custom Fields podemos añadir campos a los usuarios, y entre los distintos tipos de campos, tenemos el tipo Image, que es el que nos interesa, y así no tener de depender de Gravatar para que cada usuario tenga su propia imagen.

3 pasos 3, y ya lo tendremos funcionando:

1.- Descarga este fichero json con la configuración para ACF, e impórtalo a ACF desde Campos Personalizados –> Herramientas.

2.- Ya desde la página de perfil de cada usuario está disponible el nuevo campo para subir la imagen personalidad.

3.– Si queremos usarlo desde código por ejemplo en una página de un post, tan sencillo como:

<?php 
$author_id = get_the_author_meta( 'ID' );
$imagen_author = get_field('imagen', 'user_' . $author_id);
?>
<img src="<?php echo $imagen_author['url'];?>" alt="<?php echo esc_attr($imagen_author['alt']);?>" title="<?php echo esc_attr($imagen_author['title']);?>"/>

Se usa como cualquier otro campo, salvo que al llamar a get_field(), en el segundo parámetro no se le pasa el ID del objeto, sino que lleva el prefijo «user_», y a continuación el ID del usuario.

¿Interesa instalar Advanced Custom Fields sólo para esto? pues claro que no, ya que tenemos otros plugins más livianos para poder añadir una imagen a los usuarios. Pero como ACF suele ser un plugin muy útil, principalmente para dinamizar nuestros propios temas, y se suele usar en multitud de proyectos, si lo tenemos, usémoslo y no añadamos más plugins.