미채택 완료
회원 아이콘과 프로필 사진을 다른곳에서 불러오는 방법
회원프로필 사진이 data\member_image\id앞자리 두자리\id.gif <-이런 구조더라구요. 아이콘도 폴더만 다르고 비슷한 구조더군요.
제경우 회원등록을 미리 해주는 경우라 일일이 사진을 만들어서 폴더만들고 하는게 너무 일이 많고 변동시 수정하기도 힘듭니다.
마침 명함같이 규격이 비슷한 이미지에 회원 사진이 올려저있는 폴더가 있어서 거기서 회원 얼굴나온 부분만 잘라서 보여주려고 해봤는데 역시 생각처럼 잘 안되네요.
이리저리 해보다 결국 문의 드려봅니다.
회원사진 관련한 함수가 있는 bbs/common.lib.php 를 겁도없이 수정해봤더니
Copy
function get_member_profile_img($mb_id='', $width='', $height='', $alt='profile_image', $title=''){
global $member;
static $no_profile_cache = '';
static $member_cache = array();
$src = '';
if( $mb_id ){
if( isset($member_cache[$mb_id]) ){
$src = $member_cache[$mb_id];
} else {
$member_img = G5_DATA_PATH.'/member_image/'.substr($mb_id,0,2).'/'.get_mb_icon_name($mb_id).'.gif';
if (is_file($member_img)) {
if(defined('G5_USE_MEMBER_IMAGE_FILETIME') && G5_USE_MEMBER_IMAGE_FILETIME) {
$member_img .= '?'.filemtime($member_img);
}
$member_cache[$mb_id] = $src = str_replace(G5_DATA_PATH, G5_DATA_URL, $member_img);
}
}
}
if( !$src ){
if( !empty($no_profile_cache) ){
$src = $no_profile_cache;
} else {
// 프로필 이미지가 없을때 기본 이미지
$no_profile_img = (defined('G5_THEME_NO_PROFILE_IMG') && G5_THEME_NO_PROFILE_IMG) ? G5_THEME_NO_PROFILE_IMG : G5_NO_PROFILE_IMG;
$tmp = array();
preg_match( '/src="([^"]*)"/i', $no_profile_img, $tmp );
$no_profile_cache = $src = isset($tmp[1]) ? $tmp[1] : G5_IMG_URL.'/no_profile.gif';
}
}
if( $src ){
$attributes = array('src'=>$src, 'width'=>$width, 'height'=>$height, 'alt'=>$alt, 'title'=>$title);
$output = '<img';
foreach ($attributes as $name => $value) {
if (!empty($value)) {
$output .= sprintf(' %s="%s"', $name, $value);
}
}
$output .= '>';
return $output;
}
return '';
}
위 원본 소스를
Copy
function get_member_profile_img($mb_id='', $width='', $height='', $alt='profile_image', $title=''){
$output = '<img src="../../이미지주소/test.jpg" style="position:absolute; left:-60%; top:-60%;">';
return $output;
}
위 처럼 수정 했습니다.
어째 아무 반응이 없네요.
반응이 없으니 저길 손대는게 아닌지.. 아니면 잘못 바꾼건지 조차 모르겠습니다.
답변 1개
답변을 작성하려면 로그인이 필요합니다.