https://xetown.com/rxe_tip/981669

 

이글 참조해서 회원정보나, 위젯, 게시판보드등에 배찌를 달아볼려고 합니다.

$myFollowerCount 이걸 넣었을때는 제 팔로워 숫자는 가져오더라구요 
예를들면 팔로우 숫자가 2이상이면 표시하는 조건으로 한다면 아래 코드를 어떻게 조건을 줘야 될지요

<!--@if ($myFollowerCount > 2)-->배찌<!--@end-->

  • Lv30
    지금 뱃지를 달 조건으로 사용할 $myFollowerCount 를 가져오는 코드가 이보다 윗줄에 위치하고 있는게 확실한가요?
  • Lv30
    {@

    $sargs=new stdClass;
    $sargs->member_srl=$logged_info->member_srl;

    $doutput = executeQuery("memberfollow.getMemberFollowerCount",$sargs);

    $myFollowerCount=$doutput->data->cnt;

    }

    위젯에서 테스트 하는거라 위 코드를 넣어보았는데 에러가 떠서 지웠습니다.
  • Lv30

    위젯마다 다르니 코드가 약간씩 바뀌어야 할 부분도 있습니다.

    게시판에 먼저 해보신게 아닌가요? 게시판에 성공하신 후 다른 곳에 하시는게 순서일 것 같습니다.

     

    위젯에서 테스트를 하시는데 에러가 떠서 팔로워수 가지오는 코드를 지우셨다면 당연히 출력을 못하겠죠.

  • Lv30
    아 네 게시판에 먼저 해볼게요
  • Lv30
    그리고 로그인 한 사람의 팔로워 수를 가지고 오는게 아닙니다. 글 작성자의 수를 가져와야죠.
  • Lv30
    게시판에는 이미 팔로워,팔로잉 숫자를 표시하셨습니다.
    이 코드 위치를 사용하시려는 곳 보다 위쪽에 위치하게 하셔야 합니다. 이건만 제대로 하셔도 나옵니다.
  • Lv30
    아 네 참고하겠습니다.
  • 아 이제 이해가 됩니다. 게시판에서는 정상동작 하고 있습니다.
  • Lv30
    게시판 목록, 위젯 등은 또 팔로워숫자 가져올 대상의 변수가 조금씩 다릅니다.
    위젯은 사용하는 위젯에 따라 다르고요. 게시판 목록은 사용하는 게시판 스킨이 달라도 모두 같습니다.
  • Lv30
    네 위젯은 item 으로 다르다는건 알고 있습니다. 감사합니다.
  • Lv30

    위젯마다 다 달라요. 일단 위젯 스킨 파일 열어보시고 맞는 변수로 대상을 넣어주시면 동작합니다.

    게시판 목록이나 코멘트쪽에 하실때는
    $doutput ,$myFollowerCount 를 적당히 바꾸고 사용하세요.

    한 화면에 글,댓글,목록 이 함께 나오는 경우 같은 변수를 사용하면 엉뚱하게 덮어씌워집니다.

  • Lv30

    기준수가 시간에 따라 조금씩 상향 될텐데요. 이때 여러곳에 코딩해 놓은 숫자를 변경하려면 귀찮아 질 수 있습니다.

    그래서 저희는 사용하는 레이아웃에 이 값을 넣고 사용합니다.

    <var name="flstar_layout" type="text">
    <title xml:lang="ko">팔로워스타 기준수</title>
    <description xml:lang="ko">팔로워스타로 표시할 기준 팔로우수를 입력합니다.</description>
    </var>



    이 기준수를 넘는 회원에게 표시하고 싶은 곳곳에 활용할 수 있습니다.
    <!--@if($writerFollowerCount >= $layout_info->flstar_layout)-->특별한표시!<!--@end-->

    <!--@if($myFollowerCount >= $layout_info->flstar_layout)-->특별한표시!<!--@end-->

  • Lv30
    아 기준수까진생각 안해봤어요 ^^ 기준수가 틀릴수도 있나보군요
  • Lv30
    틀리다는게 아니고 저 값을 지금 숫자 예를들어 10으로 하고 계속 두면 사이트 대부분 활동하는 회원 모두가 뱃지를 가지므로 의미없는 뱃지가 됩니다.

    상위 1% 이내 회원만 가진다는 컨셉으로 하신다면 저 뱃지를 가질 수 있는 회원의 숫자는 회원이 늘어남에 따라 또는 팔로워 숫자를 가진 회원이 늘어남에 따라 상향 조정되는게 의도하신 대로 가지고 싶어하는 뱃지가 될 것입니다.

    저희는 처음에 팔로우가 활성화 안된 초기에는 10 이하의 숫자로 출발했지만 계속 상황에 따라 이 기준값이 올라가게 되어 있습니다.
  • Lv30

    아 맞는 말이네요 레이아웃에서 한번만 수정해주면 기준수가 다 바뀐다는 말씀이군요 ^^

    <var name="flstar_layout" type="text">
    <title xml:lang="ko">팔로워스타 기준수</title>
    <description xml:lang="ko">팔로워스타로 표시할 기준 팔로우수를 입력합니다.</description>
    </var>

    이 값은 레이아웃 위치 상관없이 입력해놓고 나중에 수정만 하신다는거죠?

  • Lv30

    네. 사용하시는 PC, 모바일 레이아웃의 두개에 위 옵션을 추가해주고 필요할때 설정값만 변경해 주고 캐시파일 재생성만 해주면 게시판,위젯 등 모든 곳에서 이 값을 참조하시면 한번에 변경됩니다.

     

    사용하시는 레이아웃의 info.xml 파일을 수정해서 추가해주셔야 합니다.

  • Lv30
    지금 프로필 이미지에 붙이시는건 프로필이미지 <div>프로필이미지</div> 이것 밖으로 빼서 넣어보세요. 이것보다 한칸 윗줄에 뱃지를 넣던지 해서 div 안으로 들어가서 지금 radius 때문에 뱃지가 잘리는 것 같습니다.
  • Lv30
    아 밖으로 빼면 프로필에서 완전히 벗어나 버리더라구요 일단 해놓고 다시 볼게요
  • Lv30

    거기서 left,top 값을 조정해 주시면 되죠.

  • Lv30
    프로필에서 완전 벗어나던데요 다시 해볼게요
  • Lv30

    개발자도구에서 위로 올려본 것 입니다.

     

    스크린샷(11).png

     

     

    z-index: 100;  는 프로필이미지 아래로 내려가서 새로 부여했습니다. z-index: 100;

  • Lv30
    ㅋㅋ 산넘어 산이군요 이미지 보고 조치 했습니다. 죄송하지만 댓글쪽도 한번 봐주시겠어요 똑같이 해봤는데 이건 안되네요
  • Lv30
    아 댓글은 대댓글이 있어서
    <div class="bPf round50p">
    위로 올리면 댓글과 대댓글이 틀어지는것 같더라구요
  • Lv30
    댓글도 윗쪽으로 이동해야 할 것 같은데요?
  • Lv30
    아..........
  • Lv30

    대댓글 depth를 1단만 쓰시나요? 앞으로도 ?

    만약 그렇다면 위로 올리신다음  style에 left 값에 조건을 걸어주세요.

     

    style="left:<!--@if($comment->get('depth'))-->XX<!--@else-->YY<!--@end-->px;top:.............................;"

     

    XX는 대댓글에 맞는 값 YY는 대댓글이 아닌 원댓글에 맞는 값을 넣으시면 됩니다.

  • Lv30
    ㅎㅎ 알겠습니다. 해볼게요
  • Lv30
    아니면 대댓글이 여러 단계를 쓰시면 또 문제가 되니까요..
    위로 올리지 마시고..

    layout css 41번 라인에
    border-radius: 50% 를 추가해주시구요.



    38번 라인에
    overflow: hidden;
    를 지워보세요.

    아마 이게 더 좋은 방법일 수 있습니다.
  • Lv30
    아래 것으로 먼저 해보세요. 아래 방법이 더 좋을 것 같습니다.
  • Lv30
    네 잘됐습니다.^^ 역쉬 ㅎㅎ감사합니다.
  • Lv30
    css를 이렇게 쓰실거면 위쪽 게시글쪽도 이렇게 하셔도 됩니다.
    전 이만 퇴근 합니다.
  • Lv30

    모바일에는
    뱃지 이미지 style 에 z-index: 3; 를 추가해보세요.

  • Lv30
    아 네 ^^ 뱃지가 뒤에 있죠?
  • Lv30
    고맙습니다. 뱃지 기준수 레이아웃에 일괄적용하는거 해볼려고 했는데 말씀하신 info.xml 파일이 저는 없더라구요 layout.html 말씀하는건 아니죠?
  • Lv30
    하위 폴더에 없나요? 그럴리가요...
  • Lv30
    네 없어요 숨김파일도 풀어봤는데요..
  • Lv30
    conf 폴더에 없을 수가 없는데요.... 그게 없으면 레이아웃 옵션을 사용할 수가 없어요.
  • Lv30
    아 conf에 있네요 ㅠㅠ 오늘 다시 시도해볼게 정말 고맙습니다.
  • Lv30
    flstar_layout 이름은 굳이 바꿀 필요 없는거죠? 레이아웃에 붙여서 해봤는데 레이아웃에서 적용한 숫자와 상관없이 무조근 뱃지가 붙어버리네요
  • Lv30
    캐시파일 재생성 하셔야 합니다.
  • Lv30
    그리고 사용하시는 레이아웃에 옵션을 제대로 만들어주지 않으셨다면 값이 0으로 인식되어 모두 뱃지를 표시할 수 있습니다.
  • Lv30
    네 당연히 했습니다.^^
  • Lv30
    네 아마도 0으로 표시 되는 것 같습니다. 말씀하시는 옵션은 어떤것 인가요?
  • Lv30
    그 당연한 일이 실수를 하고 계실 수 있습니다. 레이아웃의 옵션 값을 가져오는 아주 단순한 코드라 모두다 표시되는 일은 제가 말씀 드린 케이스라서 발생하는 것 입니다.
  • Lv30
    사용할 레이라이웃의 conf 폴더에 info.xml 파일에 옵션 을 만들고 기준값을 넣는 작업입니다.

    이것이 제대로 적용되지 않는다는건 지금 사이트에 적용되는 레이아웃에 대한 이해가 약간 부족하실 수 있습니다.
  • Lv30
    아 밑에 보니 사용, 사용안함 이런 옵션을 말씀 하시는것 맞나요?
  • Lv30
    사용,사용 안함 코드는 제가 알려드린 적이 없는데요.
    그게 아니고 지금 사용하는 레이아웃이 어떻게 적용하고 사용하시는지 정확히 파악이 되어야 합니다.

    지금 적용이 안된다는건 옵션을 만드신 것에 값을 못불러오는 것 입니다.
  • Lv30
    네 말씀 하신대로 info.xml에 들어가서 1, 사이트 기본정보 제일 밑쪽에 해당 코드를 넣으니 레이아웃 설정에 가보니깐 팔로우스타 기준수 입력란이 생성 돼서 거기에 숫자 입력하고 보드에서 <!--@if($writerFollowerCount >= $layout_info->flstar_layout)--> 조건을 넣어줬을 뿐이에요
  • Lv30
    보통 레이아웃의 경우
    메인,서브를 따로 쓸 경우 레이아웃을 복사 해서 새로 만들어 서브로 쓸 경우가 있습니다.

    이렇게 사용한다면 서브쪽에도 설정을 해주셔야 합니다.
    이러한 레이아웃이 어떻게 적용되어 사이트에서 돌아가는지 이해가 필요하다는 것 입니다.

    했는데 안된다는 것은 오타등이 없다면 분명한 이유가 존재합니다.
  • Lv30
    아 서브 맞네요 잠시만요
  • Lv30
    잘 됩니다. 순간 아차 했습니다. ㅠㅠ
  • Lv30
    지금 하신 작업이 하드코딩을 개선 하신 것 입니다.

    무언가 설정 기준을 바꾸려면 코드를 수정해야 만 하는 것이 하드코딩 되었다고 표현합니다.

    이렇게 웹에서 설정으로 변경할 수 있게 하드코딩이 아닌 것으로 개선을 하면 코드는 조금 추가되지만 사용자는 굉장히 편리해지죠.

    저희는 이 값을
    게시판 본문,서명,댓글,게시물 목록
    메인의 위젯
    팔로우랭킹 위젯
    팔로우인기회원 소개 위젯
    썸씽모듈 회원프로필영역, 게시글 목록

    등등... 에서 사용할 수 있게 되어 값을 높이고 싶을때 지금 위에 언급한 것만 봐도 어머어마한 스킨을 다시 수정해야 하는 수고를 덜게 된 것 입니다.
  • Lv30
    네 그전에 추천 및 조회 인기글도 이런식으로 표출하면 정말 편했겠어요.. 정말 좋은 정보 알려주셔서 감사드립니다. 이제 팔로우 관련된 표시나 버튼들은 어느정도 정리 된것 같아요 좀 적극적으로 홍보해야겠어요.. 아직 아시운건 개발자님게 저도 문의드리긴 했는데 팔로우 독려 팝업창 기능이 되면 정말 금방 활성화 될 것 같긴하네요 이미 적용해서 사용중이시니 효과는 잘 아실 테구요 ㅎ
  • Lv30

    특정 조건에 팝업을 레이어로 띄우는 건 개발자분이 하시기엔 부담스러운 요청이죠.
    제가 보기엔 게시글 목록에 우선적으로 하셔야 할 것 같습니다. 목록에서 부각되어 보인다면 뱃지를 가지고 싶겠죠~~

     

    인기글 설정값은 쉽게 변경되지 않아 그나마 처음에 하드코딩해도 그냥 쭉 쓸 수 있어서 필요성이 조금 덜하지만 이 팔로우스타 기준 값은 조금만 활성화 되면 기준수를 계속 올려야 될거라 편리할 겁니다.

  • Lv30
    아 게시글 목록을 안했군요..^^
  • Lv30

    fl.png

     

     

    이런 자료는 쉽게 만들수 있으니 어쩌면 더 도움이 될수도 있을 것 입니다. 

    저희는 회원에게만 동작하는 애드온인데 회원이 꼭 이용하고 싶은 서비스에 팔로우를 최소인원을 하지 않으면 저 창과 함께 이용이 안되도록 했습니다. ㅋㅋ

     

  • Lv30

    fl2.png

     

    팔로우를 해 놓으면 우선적으로 메인에서 내가 팔로우한 회원의 글을 볼 수 있도록 자리를 마련해 주고 팔로우를 몰라 팔로우를 하지 않은 회원들에게는 저렇게 안내와 함께 벌로 광고가 나갑니다 ㅋㅋ

     

  • Lv30
    아 다른 독촉 안내 기능이군요
  • Lv30

    정말 회원이 꼭 접근하고 싶은 핵심 코어 페이지에만 적용해 놓아도 효과가 좋습니다. 이용하고 싶다면 팔로우 안내문 읽고 3명을 팔로우 하는 건 어려운 일이 아니라 쉽게 하십니다. 이렇게 되면 기본적으로 회원들이 3명을 팔로우 하기 시작해서 좋은 동기내지는 안내를 그리고 행동으로 옮기게 해주는 것이죠.

  • Lv30
    저희 사이트 로그인 하시고 회원들이 이용하고 싶다고 예상되는 몇개 서비스를 접속하시면 어디서 뜨는지 찾으실 수 있습니다 ㅋㅋ
  • Lv30

    게시판 목록에 입력하는 상단쪽 조건이
    {@

    $sargs=new stdClass;
    $sargs->member_srl=$oDocument->get('member_srl');

    $woutput = executeQuery("memberfollow.getMemberFollowerCount",$sargs);

    $writerFollowerCount=$woutput->data->cnt;

    }
    read에서와 같이 들어가면 되는거죠? logged_info로도 해보는데 이건 구현이 안되네요

  • Lv30
    목록에서는 댓글작성자 처럼 목록에 사용하는 게시글작성자로 바뀌어야 합니다.
    댓글쪽도 본문과 똑같이 하셧으면 그건 잘못한건데요? 로그인회원으로 하시면 당연히 안되는거죠.
  • Lv30
    $document->get('member_srl');

    이게 목록에서 각 목록에 해당하는 글 작성자 입니다.
  • Lv30
    {@

    $sargs=new stdClass;
    $sargs->member_srl=$comment->get('member_srl');

    $woutput = executeQuery("memberfollow.getMemberFollowerCount",$sargs);

    $writerFollowerCount=$woutput->data->cnt;

    }
    댓글에서는 이렇게 조건을 걸었었구요
  • Lv30
    네. 위에 댓글 달아드렷듯이 목록에서도 목록의 글 작성자 변수가 따로 있습니다.
  • Lv30
    $writerFollowerCount

    이부분도 L을 추가하던지 해서 한 페이지에 글,댓글,목록이 보일때 다른 정보가 덮어씌워지지 않도록 해주셔야 합니다.
  • Lv30
    네 변수가 다르군요 잘 적용되었습니다.
  • Lv30
    위 팝업은 어떤걸 응용하신건가요?
  • Lv30
    그건 응용이 아니고 애드온을 제작 한 것 입니다.
    베이스가 된 애드온은 비회원에게 로그인하라고 하는 로그인해! 애든온입니다.

    동작조건은
    회원
    지정된 숫자 이하의 팔로잉 회원

    입니다.

    대신 모든 페이지에 적용하기 보다는 정말 회원이 하고 싶은 활동이 있는 서너곳 만 작동해 놓았습니다.
  • Lv30
    https://xetown.com/rxe_tip/944586
    이 팁은 삭제하신건가요? 팔로우 소식이요
  • Lv30
    네. 삭제한 이유는 얼마전에 설명 드린 것 같습니다.