웹마스터 팁

때때로 (로그인한 회원 당사자의 정보를 불러오는 게 아니라) 특정 그룹의 회원 목록을 추출해서 보여주고 싶을 때가 있을 수 있습니다.
이를테면, 고정 필진이 있는 웹진형 게시판 상단에 글쓴이의 닉네임을 출력하고자 하는 경우가 그렇죠.
(물론 닉네임이나 이메일 주소를 출력할 수도 있겠고, 거기에 다양한 링크를 걸고자 할 수도 있구요)

이럴 때 그룹별 회원 출력 위젯을 이용하면 유용합니다.
근데 위젯의 아쉬운 점은 위젯 코드를 생성하고 해당 코드를 게시판 소스에 넣으면 앞 뒤로 xe_widget_wrapper라는 div 태그가 자동으로 붙게 돼서 웹마스터가 원하는 형태로 출력하기가 쉽지 않다는 점에 있습니다.
그래서 이런 이슈도 있었지만 코어에 반영되긴 어려웠던 모양입니다.
물론 방법이 아예 없진 않아서 코어를 건드리면 되지만, 코어 수정에 부담이 될 뿐 아니라 그렇게 하면 다른 위젯 출력 부분에 영향을 줄 수 있기 때문에 꺼림칙한 것도 사실이죠.

서론이 길었습니다.
어쨌든 일반 게시판이나 페이지에서 특정 그룹의 회원 목록을 바로 출력하기 위해서는, DB에서 회원정보를 담고 있는 xe_member라는 테이블, 그리고 group_srl 정보를 갖고 있는 xe_member_group_member라는 테이블을 join 시켜줘야 합니다.
member_srl를 기준으로 붙이면 둘이 아주 잘 붙습니다.

해당 소스는 다음과 같습니다.

<ul>
  <!--// 특정 그룹에 속한 회원들의 닉네임을 출력합니다 -->
  {@
    $oDB = &DB::getInstance();
    $query = $oDB->_query('SELECT * from xe_member INNER JOIN xe_member_group_member ON xe_member.member_srl = xe_member_group_member.member_srl');
    $result = $oDB->_fetch($query);
    $oMemberModel = &getModel('member');
  }
  <li loop="$result=>$key,$val">
    <!--@if($val->group_srl==3)--> <!-- // 여기서 숫자 3은 그룹 고유 번호를 가리킵니다 -->
      {$val->nick_name}
    <!--@end-->
  </li>
</ul>

이렇게 하면 3번을 식별 번호로 하는 그룹의 회원들 닉네임이 촤르륵 출력될 겁니다.
여기에 스타일을 지정하거나 출력 조건을 수정하거나 출력 내용을 바꾸는 것도 충분히 가능하겠죠.

사실 저도 MySQL에 대한 지식도 없이 이래저래 해보다가 얻어걸린 거여서, 이보다 더 간단한 방법이 있을지 모르겠습니다.
(검색하고 다니면서 좋아보이는 것만 따다 붙인 바람에 쓸데 없는 구문이 포함되어 있을지 모르니 주의하세요~)
그래도 혹시 필요하신 분이 있을지 몰라서 소스를 남겨봅니다.

태그 연관 글
  1. [2015/08/25] 묻고답하기 한 서버에 2개의 XE를 설치하여 회원DB 연동방법? by 방울2 *13
  2. [2015/07/20] 포럼 8월 18일 이후에 회원 일부를 강퇴 시켜야 할거에요. by misol *16
  3. [2015/01/10] 포럼 member_srl이 0인 스팸회원은 삭제가 불가능하네요;; by Pure Ani *2
  4. [2014/05/02] 묻고답하기 회원을 분류해서 가입받고 싶습니다 by 베댜코베구아겨버티 *2
  5. [2014/03/30] 묻고답하기 혹시 이문제 해결이 가능한가요?? by 난남자입니다하하 *3
제목 글쓴이 날짜
한 XE1.8.11 게시판을 다른 XE1.8.11 웹에 옮기려면 어떤 절차를 밟아야 되나요? [3] 유샤인 2015.10.24
그룹별 회원 목록 출력 [2] 윤삼 2015.10.25
자바스크립트로 get값 추철하기 [1] 한꼬마 2015.10.27
글 수정일때만 업데이트 아이콘이 뜨게 하고 싶은 경우 ( 댓글 입력시에는 별도로 안 뜨고) sejin7940 2015.11.01
이제는 유튜브동영상 손쉽게 다운로드 받으세요 ミ:つÞ [7] 딴죽을거는남자 2015.11.02
CentOS PHP TS/NTS 모드 설치 방법 마루디자인 2015.11.09
파시ㅇ 예제입니다. [3] file 유창화 2015.11.12
리눅스 백업 1.0 ibin 2015.11.23
rsync 와 ssh root 접속을 막고 인증키로만 백업하기 마루디자인 2015.11.25
관리자만 볼 수 있는 로그인 기록 페이지 만들기 퍼니엑스이 2015.12.07
빠른 글 쓰기: 메인 페이지에서 글 쓰기 [1] file 윈컴이 2015.12.09
비밀글 이여도 갤러리나 웹진형에서, 썸네일이나 요약 부분이 나타나게 수정하려면.. sejin7940 2015.12.23
일반 게시판에서 익명 선택하여 작성하기 [2] POWERXE 2015.12.27
회원가입폼 기본항목에 안내문구 넣기 paraduxx 2016.01.11
리눅스 10원짜리 팁 - 탭 키 쓰십니까 ? paraduxx 2016.01.12
리눅스 10원짜리 팁 - history 명령어 응용 paraduxx 2016.01.12
가상사이트 페이지별 개별 레이아웃 적용하기 Xiso 2016.01.31
Linux(CentOS) APM 컴파일 설치 (중급) [1] rwind 2016.02.01
XE위키 모듈: 숫자 문서의 짧은 주소 문제와 미디어위키 문법 사용시 내부링크 문제 해결하기 Gunmania 2016.02.12
OpenSSL 웹에 직접 구축하기 [2] file 워리도꾸 2016.02.16