web-dev-qa-db-ja.com

画像を表示するときにget_avatarにクラスを追加する

表示するときに、アバター画像にブートストラップのimg-sensitiveクラスとimg-roundクラスを追加したいと思います。しかし、何らかの理由でget_avatarを使用するとクラスが表示されません。

WordPressコーデックスでは、関数を変更するためにget_avatarで使用できる属性リストがありますが、私はクラス配列リストをピックアップしません。

これが私が使っている現在のコードです。

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

説明の最後のパラメータは、sizename__、heightname__、widthname__などを使用できる引数配列です。これらのうち、classname__は配列または文字列です。

だから私はいくつかの組み合わせを試してみました

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

私も試した

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

しかし、どういうわけか授業は受け入れられません。

私もこの問題を抱えていました。誰かがこれに遭遇した場合、これはバージョン4.7.3のための解決策です。

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

またはより短いバージョン

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

何らかの理由で、すべてのパラメータが存在している必要があり、そうでなければ機能しません。

このメソッドは、functions.phpメソッドとは異なり、get_avatarをグローバルに変更することはありません。ですから、 "post-author"や "comments-author"のような異なるクラスを持つことができます。

2
gavsiu