Extra Form
PHP PHP 7.0
CMS XpressEngine

요즘 (게시판 모듈에서) 필진별 보기 위젯을 삽입해보려고 만지작거리고 있습니다.

 

그런데 현재 타운을 보면 글쓴이 이름에서 작성 글 보기를 누르면 member_srl을 파라미터로 해서 목록이 새로 뜨더라구요.

 

그래서 xe에서도 시도를 해봤는데 안 되더라구요.

여전히 search_target과 search_keyword로 보고 있다는;;;

 

이게 그러니까 라이믹스 한정인 거죠?

  • profile
    member_srl 참조 하는건 xe나 라이믹스나 마찬가지 입니다.

    위젯에서 하시는거면 그냥 member_info 가져 와서 하면 되는데요?
  • profile profile
    위젯에서 링크거는 건 문제가 괜찮은데요.
    게시판 목록 화면이 실제 구현되는 데 애로가 있어서요.
    가령 여기서는 이 링크가 실제로 반영이 되거든요.
    https://xetown.com/index.php?mid=questions&member_srl=38796
    근데 제가 관리하는 xe사이트에서는 안 되더라구요.
    아마 게시판 목록 디스플레이 함수가 서로 다른가봐요.
  • profile

    첮아보니 이거다 싶은데 라이믹스에는 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에는 없는 것 같구요.

    ... 자문자답이 돼버림ㅜ

     

    ... 덧. 물론 이 부분만으로 되는 것 같진 않고 코어 이곳저곳을 손봐야 할 것 같습니다. 아니면 애드온으로..

  • profile
    XE는 기본지원은 아니고 수정을 해야 했던걸로 기억하고 있습니다.
    (search_target 체크에 member_srl 추가)
  • profile profile
    그게 그렇더라구요.
    그리고 글쓴 사람의 게시물 목록 내에서 검색 기능을 활용할 수 있는 점을 고려해보면, 라이믹스처럼 member_srl로 document_list를 뿌려주는 게 더 나아보이긴 합니다.
  • profile

    작성글보기 기능을 사용하면 XE에서는 닉네임, 라이믹스에서는 member_srl 기준으로 검색합니다. 닉네임으로 검색하면 예전에 탈퇴한 회원의 닉네임을 재사용한 경우 예전 회원의 글까지 검색되는 문제가 있어서 변경되었습니다.

  • profile profile
    그러네요. 게다가 깔끔하기까지 하구요.
    닉네임은 like고, 회원번호는 equal로 쿼리가 들어갈 테니 라이믹스에서는 document_list에서 결과가 중복되는 경우(윤삼, 윤삼삼 등)도 없겠구요.
    url 주소를 봐도 그렇고 라이믹스쪽이 훨씬 더 깔끔!

    여건이 되면 xe쪽에 이슈를 넣으면 좋을 것 같은데, 버그 같은 건 아니니 반영이 미뤄지거나 안 해줄 수도 있겠어요;;
  • profile profile

    버그가 아니라고 하기엔 다른 사람들의 비밀글의 제목을 알수 있기도 해서.. 버그가 맞죠

  • profile profile

    엇 그럼 그동안 닉네임으로 수행한 검색결과에서 비밀글 필터링이 안 됐던 거예요?

  • profile profile
    말씀하신 구간이 내 작성글 확인이 맞다면 거기에는 비밀글같은 필터링이 없을수도 잇어서요 ㅎㅎ (직접 확인은 하지 못햇어요)
  • profile profile
    확인해보고 진짜 이슈를 넣든가 아니면 관리하는 모든 사이트를 라이믹스로 갈아타든가 해야겠어요^^/
  • ?

    001.PNG

     

    질문하신 바와 마찬가지로 닉네임이 아닌 아이디로 작성글을 검색하고 싶습니다.

     

    어느 파일의 어느 부분을 수정해야 할지 조언 부탁드립니다.

     

  • ? profile

    https://xetown.com/questions?member_srl=171308
    이런 식으로 구현되는 거니까,

     

    게시판 내에서
    {getUrl('', 'mid', $mid, 'member_srl', '회원번호')}
    같은 식으로 링크를 걸어주면 되지 않을까 싶습니다.

  • profile ?

    솔직히 알려주신 말씀을 이해하지 못했습니다.



    /xe/modules/board/board.controller.php

    //search
    $url = getUrl('','mid',$mid,'search_target','user_id','search_keyword',$member_info->user_id);

     

     

    여기 저기 고치다 보니 어딜 고쳐야 할지 찾았습니다.

     

    그런데 어떤 계정은 제대로 검색이 되고 어떤 계정은 결과가 나오지 않아서 이상합니다.