get_avatar()(아바타 가져오기)
get_avatar() 함수는 댓글 목록에서 매우 일반적으로 사용되는 고정된 이메일 주소나 사용자의 아바타 코드를 가져오는 데 사용됩니다.
이 함수는 아바타의 HTML 코드(img 태그)를 필터링하는 get_avatar 필터를 제공합니다.
백그라운드 "설정"의 "토론"에서 "아바타 옵션 표시"가 꺼진 경우 False가 반환됩니다.
사용방법
get_avatar( $id_or_email, $size, $default, $alt );
매개변수
$id_or_email
(정수 | 문자열 | 개체) (필수) 사용자의 이메일 또는 사용자의 개체입니다. 루프에 있는 경우 get_the_author_meta( 'ID' ) 함수를 사용하여 현재 기사의 작성자를 호출할 수 있습니다.
기본값: 없음
$사이즈
(정수) (선택 사항) 아바타의 크기(픽셀 단위)는 최대 512입니다.
기본값: 96
get_avatar() (아바타 가져오기)
$기본
(문자열) (선택) 아바타에서 반환한 사진이 없는 경우 기본값은 "신비한 남자"이며 사진 URL일 수 있습니다.
기본값: 빈 문자열(신비한 남자)
$alt
(문자열) (선택 사항) 아바타 img 태그의 alt 속성 내용입니다.
기본값: 거짓
반환값
(String | Boolean) 아바타의 img 태그를 반환합니다. 백그라운드의 "설정"의 "토론"에서 "아바타 표시 옵션"이 꺼져 있으면 False를 반환합니다.
예
댓글 목록:
<?php echo get_avatar( $GLOBALS['comment'] ); ?>
현재 기사 작성자의 아바타를 가져오는 루프:
<?php echo get_avatar( get_the_author_meta( 'ID' ), 32 ); ?>
맞춤 이메일:
<?php echo get_avatar( 'email@example.com', 32, '', '自定义邮箱' ); ?>
맞춤 아바타 이미지를 위한 Alt 태그
WordPress는 기본적으로 get_avatar() 함수를 통해 호출되는 Gravatar 아바타를 사용합니다. 일반적으로 댓글을 호출할 때 사용됩니다.
get_avatar() 함수의 네번째 속성인 $alt를 이용하면 리턴코드의 alt태그를 설정할 수 있는데, 대부분의 사람들이 사용시 설정하지 않고 공백으로 되어있습니다.
검색 엔진 크롤러는 이미지의 내용을 읽을 수 없으며 Alt 태그에만 의존할 수 있습니다. Alt 태그가 없는 이미지는 SEO에 매우 좋지 않습니다.
모든 아바타에 alt 태그를 추가하려면 테마의 function.php(자세히 알아보기) 파일에 다음 코드를 입력하세요.
/** *WordPress 自定义头像图片的 alt 标签 *根据不同的人生成不同的 alt 标签 *http://www.endskin.com/avatar-alt/ */ function Bing_avatar_alt( $avatar ){ $alt = 'Gravatar 头像';//alt 标签的内容 $before = strpos( $avatar, "alt='" ); $after = strpos( $avatar, "'", $before ); if( $before === false || $after === false ) return $avatar; $alt = esc_attr( $alt ); return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) ); } add_filter( 'get_avatar', 'Bing_avatar_alt' );
코드의 $alt 변수를 수정하려는 alt 태그의 내용으로 수정하세요.
사람에 따라 다른 대체 태그 생성
사람마다 다른 Alt 태그를 배치하려면 다음 예제 코드를 사용할 수 있습니다.
/** *WordPress 自定义头像图片的 alt 标签 *http://www.endskin.com/avatar-alt/ */ function Bing_avatar_alt( $avatar, $id_or_email ){ if( $id_or_email == 'bingoblog@163.com' || $id_or_email === 1 ){ $alt = '博主 Gravatar 头像';//博主的 alt 标签内容 }else{ $alt = 'Gravatar 头像';//普通访客的 alt 标签内容 } $before = strpos( $avatar, "alt='" ); $after = strpos( $avatar, "'", $before ); if( $before === false || $after === false ) return $avatar; $alt = esc_attr( $alt ); return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) ); } add_filter( 'get_avatar', 'Bing_avatar_alt', 10, 2 );
이미 설정된 Alt 태그를 교체하지 마세요
설정된 alt 태그(get_avatar() 함수의 $alt 속성)의 내용을 바꾸지 않으려면 다음 코드를 사용하면 됩니다.
/** *WordPress 自定义头像图片的 alt 标签 *如果已经设置 alt 标签则不替换 *http://www.endskin.com/avatar-alt/ */ function Bing_avatar_alt( $avatar, $id_or_email, $size, $default, $alt ){ if( !empty( $alt ) ) return $avatar; $alt = 'Gravatar 头像';//alt 标签的内容 $before = strpos( $avatar, "alt='" ); $after = strpos( $avatar, "'", $before ); if( $before === false || $after === false ) return $avatar; $alt = esc_attr( $alt ); return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) ); } add_filter( 'get_avatar', 'Bing_avatar_alt', 10, 5 );