웹마스터 팁



이전에 이런 팁이 있는지 모르겠지만, 제가 한참 고민해서 만든 것을 공유하고자 합니다.

 

위젯페이지나 메인페이지에서 최신글 목록에서 곧바로 첨부파일을 다운로드 할 수 있는 팁입니다.

 

 

 

먼저 widgets/content/content.class.php 파일에서 아래부분을 찾습니다.

 

class contentItem extends Object {

        var $browser_title = null;
        var $has_first_thumbnail_idx = false;
        var $first_thumbnail_idx = null;
        var $contents_link = null;
        var $domain = null;

 

---------------------------------------------- <- 여기에 아래 있는 함수들을 첨가합니다.

 

 

function getDownloadUrl($file_srl, $sid) {
            return sprintf('?module=%s&amp;act=%s&amp;file_srl=%s&amp;sid=%s', 'file', 'procFileDownload', $file_srl, $sid);
        }
       
       
        function getFiles($upload_target_srl, $columnList = array(), $sortIndex = 'file_srl', $ckValid = false) {
            $args->upload_target_srl = $upload_target_srl;
            $args->sort_index = $sortIndex;
   if($ckValid) $args->isvalid = 'Y';
            $output = executeQuery('file.getFiles', $args,$columnList);
            if(!$output->data) return;

            $file_list = $output->data;

            if($file_list && !is_array($file_list)) $file_list = array($file_list);

            $file_count = count($file_list);
            for($i=0;$i<$file_count;$i++) {
                $file = $file_list[$i];
                $file->source_filename = stripslashes($file->source_filename);
                $file->download_url = $this->getDownloadUrl($file->file_srl, $file->sid);
                $file_list[$i] = $file;
            }

            return $file_list;
        }
   function getUploadedFiles() {          
            if(!$this->get('uploaded_count')) return;

            $oFileModel = &getModel('file');
            $file_list = $oFileModel->getFiles($this->get('document_srl'), array(), 'file_srl', true);
            return $file_list;
        } 
 

그리고 해당 위젯 파일에 넣고 싶은 부분에 아래부분을 첨가합니다.

 

<!--@foreach($item->getUploadedFiles() as $key => $file)-->[<a href="{getUrl('')}{$file->download_url}">Download</a>]<!--@end-->

 

만일 여러 첨부파일중에서 가장 먼저 올려진 첨부파일 하나만 링크하고자 한다면, 아래와 같이 입력하면 될 듯 싶습니다. 이거는 테스트 안 해봤습니다.

 

{@$idx=0}<!--@foreach($item->getUploadedFiles() as $key => $file)--><!--@if($idx==0)-->[<a href="{getUrl('')}{$file->download_url}">Download</a>]<!--@end-->{$idx++}<!--@end-->

 

[Download]부분에 파일명이 나오게 하고 싶으시면,

[Download] -> [{$file->source_filename}] 로 바꾸시면 됩니다.

도움이 되었으면 좋겠습니다.

 

제목 글쓴이 날짜
XE를 위한 DEBUG 이야기 [3] 우진홈 2013.04.30
array 함수와 in_array함수 이용한 시간 체크 똑디 2013.05.03
모바일에서 댓글 자동 펼치기 (스킨:스케치북5모바일) [2] 준스타일 2013.05.03
1.7.3.2로 업데이트 이후, 글쓴이 제대로 표현하기 (스킨:스케치북5) [13] 준스타일 2013.05.04
오래된 게시글에 댓글포인트 안주기 [6] Xiso 2013.05.04
1.7.3 최신버전 특정사이트 iframe(아이프레임) 일반회원 html적용가능하게 하기 [2] imgXE™ 2013.05.06
파일첨부 100% 살아질때 이것 확인해 보세요. [6] 착한악마 2013.05.09
알림센터 사용환경 수집 무력화하기 [14] CMD 2013.05.10
위젯 페이지 또는 메인 페이지에서 게시판 첨부파일 바로 다운로드 할 수 있도록 만들기 최르토스 2013.05.10
XE 1.7.3.0 default 스킨 IE9 드롭다운메뉴 안보이는 현상 [4] 장포크 2013.05.13
APM에서 XE 설치시 깨짐현상 발생될때... file 비밀M 2013.05.14
1.7.3.3. 에서 어드민바(관리자 바) 안뜨게 하기. [3] file AppSeedKorea 2013.05.14
[익스10] 스케치북 갤러리 사용시 목록 썸네일 오류현상 해결하기 [4] file imgXE™ 2013.05.16
어드민이 미쳐날뛰고 있습니다. (파비콘(favicon) 16px 이상의 ico적용했을때 admin 바가 미쳐날뜁니다.) file 장포크 2013.05.16
XE Board 2007 스킨에서 Table 속성을 W3C 표준에 맞추기. [3] Paul 2013.05.17
XE 팝업모듈과 애드온 : XE_Popup_Borderless [7] file 우진홈 2013.05.17
자료실에 있는 LNB메뉴 위젯 사용 시 참고 사항 퍼니엑스이 2013.05.19
트랙백 기능 자체를 사용 안하기 [4] 윈컴이 2013.05.21
스팸 회원 삭제시 동시에 관련 글 / 댓글 자동 삭제 + 스팸IP 등록기능 구현방법입니다 [20] sejin7940 2013.05.22
♥ 간단하게 사이트 현재 접속자 수 표기하는 방법 ♥ [5] file 다크진 2013.05.28