위젯

회원 간편 검색 위젯

추천 수 0 댓글 20
Extra Form
자료 소개 자동완성 기능이 있는 회원 검색 기능을 출력하는 위젯입니다.
설치 경로 ./widgets/ap_member_handy_search
테스트 환경 Rhymix 1.x
라이선스 GPL v2
이름 버전 날짜 다운수
ap_member_handy_search.0.1.1.zip 0.1.1 2020-04-10 89

- 말 그대로 닉네임으로 회원을 간편하게 검색할 수 있는 위젯입니다.

- 벌써 2년전에 만들었던 자료인데 생각난 김에 공유해봅니다.

... 근데 이걸 예전에 어디선가 공유를 했던 것도 같은데 잘 안 찾아지네요;;;

=> 아 찾았다. 여기 있었네요. https://xetown.com/topics/1027330
... 암튼 위 링크에 있는 것과는 폴더명도 다르고 동작도 살짝 개선하고 그래서 조금은 다를 겁니다.

- 아무데나 갖다 붙여넣으세요ㅋ

 

1. 작동 방식 보기

 

- 기본 스킨에 의하면 초기 화면은 이렇게 덩그러니 인풋 필드만 있습니다.

4.png
... 더 나은 스타일링은 각작 커스텀하거나 스킨 개발해서 추가하시면 됩니다.

 

- 입력해보겠습니다.

5.png
... 일단 잘 입력되는군요ㅋ

 

- 초성에 이어 중성까지 입력되면 자동완성 리스트가 뜹니다.

6.png
... 검색결과에 검색어가 하이라이트 됐네요ㅎ
... 결과 목록의 정렬은 나름 가중치가 있습니다. 검색결과가 검색어로 시작할 것, 검색결과에 중복값이 있을 것 등등. 사실 그외에는 그냥 가나다순입니다ㅋ 귀찮귀찮;;;

 

- 방향키 이동 또는 마우스엔터가 되면 이렇게 목록에도 하이라이트가!

7.png
: 여기서 엔터를 누르거나 좌클릭하면?

 

- 회원페이지 또는 섬씽 모듈이 활성화돼 있다면 회원활동 페이지로 연결됩니다

... 이거는 멤버 모듈의 회원페이지 결과네요 :)
8.png

 

미리보기

 

2. 위젯 설정하기

 

- 먼저 검색 대상 회원 그룹을 체크하여 검색 범위와 결과를 한정시켜줍니다.

0.png
... 보안 문제도 있을 테니까 회원그룹 선택은 매우 중요하지요.

 

- 자동완성 리스트에 나타낼 최대 개수를 지정합니다.

1.png
... 디스크립션에 설명이 다 나와 있네요ㅎ

 

- 링크로 이동할 때 회원모듈로 갈지 썸씽모듈로 갈지 선택해줍니다.

2.png
... 2, 3번을 선택할 때는 당연히 썸씽모듈이 깔려 있어야겠지요?

 

- 마지막으로 링크를 열 때 현재 창에서 진행할지 새 창에 진행할지 고릅니다.

3.png

 

미리보기

 

 

그럼, 끝.

제작자 윤삼

profile
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.
  • profile

    윤삼님 전에 member_srl을 넣는 방법을 문의하였는데 알려주셔서 아주 유용하게 잘 사용하고 있습니다. 혹시 회원확장변수도 옆에 나오게 할 수 있을까요?

    그리고 확장변수로도 검색할  수 있을까요?

  • profile profile
    오랜만에 소스를 까봤습니다ㅎㅎ

    - ./widgets/ap_member_handy_search/ap_member_handy_search.php 파일 25행
    $search_result[$idx]->extra_vars = $val->extra_vars;
    라고 추가

    - ./widgets/ap_member_handy_search/queries/getMemberList.xml 파일 10행
    <column name="member.extra_vars" />
    라고 추가

    이렇게 하면 확장변수를 가져올 수는 있는데, 확장변수 값이 직렬 처리(?)되어 있어서 이걸 object로 바꾸고 거기서 필요한 값만 취하는 건 직접 해보시면 좋을 것 같습니다.

    어쨌든 그렇게 하면 전에 알려드렸던 ./widgets/ap_member_handy_search/src/js/autocomplete.js 파일에서 item이라는 변수에 회원확장변수값이 전달될 겁니다.
  • profile profile
    너무 잘 사용하고 있습니다^^ 진심 감사드립니다. 오늘도 행복하세요~
  • profile profile
    이렇게 하면 확장변수를 가져올 수는 있는데, 확장변수 값이 직렬 처리(?)되어 있어서 이걸 object로 바꾸고 거기서 필요한 값만 취하는 건 직접 해보시면 좋을 것 같습니다.<--- 참고할만한 팁이 있을까요?
  • profile profile
    여기 문서를 참고하시면 php에서 확장변수를 추려볼 수 있을 것 같습니다.
    http://chongmoa.com/php/6902
  • profile profile
    감사합니다~ 벌써 식사시간이네요~ 식사 맛있게 하세요~
  • profile profile
    아...이걸 떠먹여주셔도 못먹네요..ㅡ.ㅡ;; 아무리 해도 안되네요 ㅠㅠ..

    $aaa = unserialize(serialize($extra_vars));
    $search_result[$idx]->extra_vars= $val->aaa;

    이렇게 해야하는거 아닌가요?
  • profile profile

    출력해야 할 확장변수의 입력항목 ID가 aaa라고 해보겠습니다. (하나만 출력하려는 거 맞죠?)

    - ./widgets/ap_member_handy_search/ap_member_handy_search.php 파일 25행
    $_extra_vars = unserialize($val->extra_vars);
    $search_result[$idx]->aaa = $_extra_vars->aaa ?? '';
    라고 두 줄 추가

    - ./widgets/ap_member_handy_search/queries/getMemberList.xml 파일 10행
    <column name="member.extra_vars" />
    라고 한 줄 추가

    - ./widgets/ap_member_handy_search/src/js/autocomplete.js 파일 111행
    ' ('+ item.member_srl +'), '+ item.aaa +'</span></div></li>')
    라고 한 줄 추가

    왠지 이러면 될 것 같은데...

  • profile profile
    오.... 됩니다.... 몇시간을 이렇게 저렇게 해봤는데... 이렇게 되는군요...ㅠㅠ 윤삼님의 능력이 부럽네요 ㅠㅠ 감사합니다.
  • profile profile
    잘 되신다니 다행입니다 ;)
  • ?
    감사합니다.
  • profile
    멋진자료 감사합니다 ^^
  • profile
    유용하게 잘 사용하겠습니다. 감사합니다. ^^
  • profile
    검색시 나타나는 회원명 옆에 member_srl 을 표시해주려면 어디를 수정해야할까요?
  • profile profile
    ./widgets/ap_member_handy_search/src/js/autocomplete.js 111행을
    ' ('+ item.member_srl +')</span></div></li>')
    으로 바꿔보세요.
  • profile profile
    거기 숨어 있었군요 ㅎ 감사합니다~^^
  • ?
    감사합니다.
  • profile
    좋은 자료 감사드립니다^^
  • profile
    굳 bb
    선 리뷰 후 다운로드합니다..!
  • profile profile
    우훗 감사합니다~
    (그나저나 이렇게 정식으로 올리고 보니 동작 상 결점들이 눈에 들어오네요ㅠㅠ)