content 위젯을 수정해서 적용해 봤습니다. '게시물'에만 해당됩니다.

 

1) content.class.php파일의 약 217번째 줄인

 

$output = executeQueryArray('widgets.content.getNewestDocuments', $obj);

 

코드를 아래와 수정해 줍니다.

 

// 친구만 옵션

if($args->only_friend == 'Y') {

    $logged_info = Context::get('logged_info');

    $params->member_srl = $logged_info->member_srl;

    $params->list_count = 10000;

    $columnList = array('friend_srl', 'target_srl');

    $result = executeQuery('communication.getFriends', $params, $columnList);

    $member_srls = array();

    foreach($result->data as $key => $val) {

        $member_srls[] = $val->target_srl;

    }

    $obj->member_srls = $member_srls; // 배열에 친구의 member_srl가 담겨져 있다;

    $output = executeQueryArray('widgets.content.getNewestDocumentsForFriend', $obj);

}else{

    $output = executeQueryArray('widgets.content.getNewestDocuments', $obj);

}

 

 

2) 첨부된 getNewestDocumentsForFriend.xml파일을 queries 폴더에 넣어 줍니다.

 

3) conf/info.xml 파일의 extra_vars 노드 안에 다음의 내용을 추가 해줍니다. (첨부한 압축 파일을 참고하세요.)

 

 

<var id="only_friend" type="select">

    <name xml:lang="ko">친구의 컨텐츠만 표시</name>

    <options>

        <value>N</value>

        <name xml:lang="ko">미사용</name>

    </options>

    <options>

        <value>Y</value>

        <name xml:lang="ko">사용</name>

    </options>

</var>

 

더 자세한 내용은 첨부한 압축 파일을 참고하시길 바랍니다.

skyo

?
XE타운 관리자 입니다.
관리자 아닌것 같지만 제이쿼리 엔지가 없는게 매력인 관리자 입니다.
  • Lv15
    플래닛에서 친구 플래닛 글만 가져오고 싶을 때 쓰면 유용하겠네요
  • ?
    안녕하세요.
    혹시 친구가 아닌 직접 입력한 특정 아이디의 글작성자들글만 가져오려면 어떻게 해야 할지 도움 말씀 좀 부탁드려도 될까요 ^^;;
  • Lv5
    이야 이거 대박인데요....
    커뮤니티 사이트에서는 정말 좋은 기능이라 생각됩니다.
    기존에 srl클럽에 친구등록해놓은 사람 글이 뜨는 그런것을 보았는데요.
    친구등록=팔로잉 이라는 개념을 만들수 있는 방법 같네요 ㄷ
    응용해 보면 좋은 위젯이 많이 만들어 질것 같습니다.
    저같은경우는 친구등록해 놓은 사람의 판매리스트를 쫙 뽑아오게 하는 방식으로 쇼핑몰에도 도움이 될것 같습니다^^
    감사!
  • ?
    좋네요~
    제게 필요한 기능이었는데
    자세히 설명해 주셔서 감사 드립니다~