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>
더 자세한 내용은 첨부한 압축 파일을 참고하시길 바랍니다.