web-dev-qa-db-fra.com

Ajouter une classe supplémentaire à get_avatar lors de l'affichage de l'image

Je veux ajouter des classes bootstrap img-responsive et img-arrondies à l'image de l'avatar lors de l'affichage. Mais pour une raison quelconque, la classe n'est pas affichée lors de l'utilisation de get_avatar.

Par codex WordPress, il existe une liste d'attributs que vous pouvez utiliser dans get_avatar pour modifier la fonction, mais ma liste de tableaux de classes de ramassage ne fonctionne pas.

Voici le code actuel que j'utilise.

get_avatar( $current_user->user_email, 128, null, null, array('class' => array('img-responsive', 'img-rounded') ) );

Par explication, dernier paramètre est un tableau d'arguments dans lequel vous pouvez utiliser size, height, width etc ... parmi ceux-ci est class qui peut être un tableau ou une chaîne.

J'ai donc essayé quelques combinaisons

$args = array(
   'class' => 'img-responsive img-rounded'
 );
get_avatar( $current_user->user_email, 128, null, null, $args );

J'ai aussi essayé

$args = array(
 'class' => array( 'img-responsive', 'img-rounded');
);

Mais pour une raison quelconque, les cours ne sont pas acceptés.

4

J'ai eu ce problème également. Voici la solution pour la version 4.7.3 si cela vous interesse.

get_avatar( $id_or_email = get_the_author_meta( 'user_email' ), $size = '60', $default, $alt, $args = array( 'class' => array( 'd-block', 'mx-auto' ) ) );

ou version plus courte

get_avatar( get_the_author_meta( 'user_email' ), '60', $default, $alt, array( 'class' => array( 'd-block', 'mx-auto' ) ) );

Pour une raison quelconque, tous les paramètres doivent être présents ou cela ne fonctionne pas.

Contrairement à la méthode functions.php, cette méthode ne modifiera pas get_avatar globalement. Ainsi, vous pouvez avoir différentes classes comme "post-author" ou "comments-author".

2
gavsiu