현재 사용자 아바타 URL을 사용자 메타에 저장된 사용자 지정 URL로 덮어 쓰는 기능을 만들고 싶습니다. 지금까지는 함수 이으로 작동한다는 것을 제외하고는 buddypress/wordpress 사용자의 사용자 ID를 얻는 방법을 파악하는 데 어려움을 겪었습니다.BuddyPress/Wordpress 동적 사용자 ID 가져 오기
코드는 지금까지 다음과 같습니다
나는 사용자의 ID에 기록 된 전류는 $ USER_ID를 설정하는 경우 가장 큰 문제는// return new URL for avatar
function wpse_49216_my_new_avatar_url() {
// get user_id of user bp/wp is getting avatar for
$user_id = bp_get_member_user_id();
// get avatar name from above user's meta
$avatar_choice = get_user_meta($user_id, "avatar_choice", true);
if($avatar_choice) {
return 'path_to_avatars/'.$avatar_choice.'.png';
} else {
return 'path_to_avatars/default-avatar.png';
}
}
add_filter('bp_core_fetch_avatar_url', 'wpse_49216_my_new_avatar_url');
// Replace image src="" with the new avatar URL
function wpse_49216_filter_bp_avatar($html) {
return preg_replace('/src=".+?"/', 'src="' . wpse_49216_my_new_avatar_url() . '"', $html );
}
add_filter('bp_core_fetch_avatar', 'wpse_49216_filter_bp_avatar');
은, 모든 아바타가 로그인 현재의 아바타를로드 할 것이다 사용자. 그리고 bp_get_member_user_id()
은 회원 페이지에서만 작동합니다. 보편적으로 작동하는 무언가가 필요합니다. 어떤 Wordpress/Buddypress 전문가가 올바른 사용자 ID를 얻는 방법을 알고 있습니까?