게시물을 member_srl로 보기
CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 7.0 |
요즘 (게시판 모듈에서) 필진별 보기 위젯을 삽입해보려고 만지작거리고 있습니다.
그런데 현재 타운을 보면 글쓴이 이름에서 작성 글 보기를 누르면 member_srl을 파라미터로 해서 목록이 새로 뜨더라구요.
그래서 xe에서도 시도를 해봤는데 안 되더라구요.
여전히 search_target과 search_keyword로 보고 있다는;;;
이게 그러니까 라이믹스 한정인 거죠?

윤삼
Lv. 19
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.
댓글 14
위젯에서 하시는거면 그냥 member_info 가져 와서 하면 되는데요?
게시판 목록 화면이 실제 구현되는 데 애로가 있어서요.
가령 여기서는 이 링크가 실제로 반영이 되거든요.
https://xetown.com/index.php?mid=questions&member_srl=38796
근데 제가 관리하는 xe사이트에서는 안 되더라구요.
아마 게시판 목록 디스플레이 함수가 서로 다른가봐요.
첮아보니 이거다 싶은데 라이믹스에는 dispBoardNoticeList() 함수에 아랫부분이 이런 게 있네요.
// set member_srl for view particular member's document
if($this->module_info->use_anonymous !== 'Y')
{
$args->member_srl = abs(Context::get('member_srl'));
}
근데 이게 xe에는 없는 것 같구요.
... 자문자답이 돼버림ㅜ
... 덧. 물론 이 부분만으로 되는 것 같진 않고 코어 이곳저곳을 손봐야 할 것 같습니다. 아니면 애드온으로..
(search_target 체크에 member_srl 추가)
그리고 글쓴 사람의 게시물 목록 내에서 검색 기능을 활용할 수 있는 점을 고려해보면, 라이믹스처럼 member_srl로 document_list를 뿌려주는 게 더 나아보이긴 합니다.
작성글보기 기능을 사용하면 XE에서는 닉네임, 라이믹스에서는 member_srl 기준으로 검색합니다. 닉네임으로 검색하면 예전에 탈퇴한 회원의 닉네임을 재사용한 경우 예전 회원의 글까지 검색되는 문제가 있어서 변경되었습니다.
닉네임은 like고, 회원번호는 equal로 쿼리가 들어갈 테니 라이믹스에서는 document_list에서 결과가 중복되는 경우(윤삼, 윤삼삼 등)도 없겠구요.
url 주소를 봐도 그렇고 라이믹스쪽이 훨씬 더 깔끔!
여건이 되면 xe쪽에 이슈를 넣으면 좋을 것 같은데, 버그 같은 건 아니니 반영이 미뤄지거나 안 해줄 수도 있겠어요;;
버그가 아니라고 하기엔 다른 사람들의 비밀글의 제목을 알수 있기도 해서.. 버그가 맞죠
엇 그럼 그동안 닉네임으로 수행한 검색결과에서 비밀글 필터링이 안 됐던 거예요?
질문하신 바와 마찬가지로 닉네임이 아닌 아이디로 작성글을 검색하고 싶습니다.
어느 파일의 어느 부분을 수정해야 할지 조언 부탁드립니다.
https://xetown.com/questions?member_srl=171308
이런 식으로 구현되는 거니까,
게시판 내에서
{getUrl('', 'mid', $mid, 'member_srl', '회원번호')}
같은 식으로 링크를 걸어주면 되지 않을까 싶습니다.
솔직히 알려주신 말씀을 이해하지 못했습니다.
/xe/modules/board/board.controller.php
//search
$url = getUrl('','mid',$mid,'search_target','user_id','search_keyword',$member_info->user_id);
여기 저기 고치다 보니 어딜 고쳐야 할지 찾았습니다.
그런데 어떤 계정은 제대로 검색이 되고 어떤 계정은 결과가 나오지 않아서 이상합니다.