게시판 목록에서 사이드뷰 설정과 관계없이 회원 아이콘 출력하기
페이지 정보

본문
문제 상황 및 원인
그누보드 기본 설정에서는 게시판 목록에서 회원 아이콘을 출력하려면 글쓴이 사이드뷰 옵션이 활성화되어 있어야 합니다. 사이드뷰 옵션을 사용하지 않음으로 설정하면 회원 아이콘도 함께 출력되지 않는 구조적 제한이 있습니다. 이는 기본 로직이 사이드뷰 활성화 여부를 기준으로 동작하기 때문입니다.
해결 방법
lib/common.lib.php 파일 내의 get_list 함수를 찾아 사이드뷰 옵션이 꺼져 있더라도 전체 회원 아이콘 설정값에 따라 아이콘을 생성하고 출력하도록 로직을 변경합니다.
$tmp_name2 = cut_str($list['wr_name'], $config['cf_cut_name']);
if ($board['bo_use_sideview']) {
$list['name'] = get_sideview($list['mb_id'], $tmp_name2, $list['wr_email'], $list['wr_homepage']);
} else {
if ($config['cf_use_member_icon']) {
$mb_dir = substr($list['mb_id'],0,2);
$icon_file = G5_DATA_PATH.'/member/'.$mb_dir.'/'.get_mb_icon_name($list['mb_id']).'.gif';
if (file_exists($icon_file)) {
$icon_filemtile = (defined('G5_USE_MEMBER_IMAGE_FILETIME') && G5_USE_MEMBER_IMAGE_FILETIME) ? '?'.filemtime($icon_file) : '';
$width = $config['cf_member_icon_width'];
$height = $config['cf_member_icon_height'];
$icon_file_url = G5_DATA_URL.'/member/'.$mb_dir.'/'.get_mb_icon_name($list['mb_id']).'.gif'.$icon_filemtile;
$tmp_name .= '';
if ($config['cf_use_member_icon'] == 2)
$tmp_name = $tmp_name.' '.$tmp_name2;
} else {
if( defined('G5_THEME_NO_PROFILE_IMG') ){
$tmp_name .= G5_THEME_NO_PROFILE_IMG;
} else if( defined('G5_NO_PROFILE_IMG') ){
$tmp_name .= G5_NO_PROFILE_IMG;
}
if ($config['cf_use_member_icon'] == 2)
$tmp_name = $tmp_name.' '.$tmp_name2;
}
}
$list['name'] = ''.$tmp_name.'';
}적용 후 확인 및 주의사항
파일 수정 전 반드시 원본 파일을 백업해야 합니다. 코드를 적용한 후 게시판 목록 화면으로 이동하여 사이드뷰 옵션을 끈 상태에서도 회원 아이콘이 정상적으로 출력되는지 확인하세요. 테마에 따라 별도의 프로필 이미지 출력 로직이 존재할 수 있으므로 테마 구조를 함께 확인하는 것이 좋습니다.
함께 보면 좋은 글
- 이전글그누보드 관리자 페이지 최근 게시물 목록에서 댓글 제외하는 방법 26.09.13
- 다음글관리자 대시보드 최근 게시물 출력 게시판 필터링 설정 방법 26.09.13
댓글목록
등록된 댓글이 없습니다.