zb5beta - 모듈 자료실

안녕하세요. 오랬만에 모듈 수정해보네요.
갤러리의 이미지를 팝업으로 띄우면 어떨까하고 한번 수정해봤어요.
첨부파일
1. zSvc.class.php -> /public_html/zb5/classes/ 에 복사
2. view_pic.php -> /public_html/zb5/ 에 복사
3 또는 4번 선택
3. board_gallary[디렉토리] -> /public_html/zb5/modules/ 에 복사
4. board_gallary_pop[디렉토리] -> 3번과 동일하며 이름만 변경 /public_html/zb5/modules/ 에 복사
ps. 흠 소마님에게 말씀안드리고 모듈 약간 수정했습니다...쩝
전체 리스트에서 이미지를 클릭하면 원래는 ./zb5/?sid=12&article_srl=13 이런식으로 불러지는데 약간수정을 봐서 ./zb5/view_pic.php?sid=12&article_srl=13&action=popup 이런 식으로 불러집니다. 나머지는 기존과 거의 유사합니다.
zSvc.class.php에서 레이아웃을 null로 불러오기 위해 수정했습니다.
아~ 라이센스를 잊었네요...zb5의 라이센스를 존중합니다. 소스 무단 배포를 했군요...쩝
/public_html/zb5/classes/zSvc.class.php 를 열어보시면 164 라인에 function proc(){ 가 있습니다.
이 함수 밑에 다음을 추가해주시면 감사하겠습니다.
---------------다음-----------------------------------
function proc_pop() {
$this->preProc();
$this->_doAction();
$this->_getModulePageHtml();
$this->_getLayoutPopHtml();
require_class('zAnalytics');
zAnalytics::record();
$this->_printHtml();
}
function _getLayoutPopHtml() {
if(!$this->selected_layout) return;
$layout_name = 'null';
$theme = $this->selected_layout->theme;
$this->addLang(LAYOUT_DIR.$layout_name.'/lang/');
@include LAYOUT_DIR.$layout_name.'/require.var.php';
foreach($layout as $key => $value) {
if($value['type']=='plugin') {
$plugin_srl = $this->selected_layout->{$key};
$this->plugin_list[$key] = $this->oPage->getPluginHtml($plugin_srl);
}
}
$this->image_path = sprintf("%s%s/theme/%s/images/", LAYOUT_DIR, $layout_name, $theme);
$layout_tpl = sprintf("%s%s/tpl/layout.tpl",LAYOUT_DIR,$layout_name);
$this->tpl->content = $this->oSmarty->assign_fetch($layout_tpl, $this);
$layout_theme_css_file = sprintf("%s%s/theme/%s/layout.css",LAYOUT_DIR,$layout_name,$theme);
if(file_exists($layout_theme_css_file)) $this->addCssFile($layout_theme_css_file);
$layout_js_file = sprintf("%s%s/layout.js",LAYOUT_DIR,$layout_name,$layout_name);
if(file_exists($layout_js_file)) $this->addJsFile($layout_js_file);
}
--------------------------끝-------------------------------------
무단으로 zb5 파일을 수정배포해서 대단히 죄송합니다. 이 파일을 수정해야만 팝업이 가능하기에....쩝
라이센스와 관련해서 말씀하신다면 파일을 삭제하도록 하겠습니다.
^^ 네 감사합니다. 예전 제로보드 4.1에서도 이미지 겔러리 팝업으로 만든적있어요.
그때는 이미 기초를 만든 분이 있으셔서 쉽게 편집할 수 있었는데 5.0으로 넘어오면서 만드시는 분이 없어서 만들어봤어요.
약간 설명을 하자면 원래 view_pic.php는 index.php였습니다.
보통 모듈을 불러올때 ./?sid=12 이런식으로 불러오자나요.
근데 이게 원래는 ./index.php?sid=12 이거더라구요.
그리고 이거 불러질때 내부 함수중 proc()를 불러서 레이아웃하고 모듈을 적용하는데...팝업으로 뜨는 경우에는 레이아웃이 필요없더라구요.
그래서 이 함수를 복사해서 proc_pop()로 만들고 레이아웃 적용부분에서 본문만 있는 "null"레이아웃으로 고정해놨습니다. 이걸 응용하면 모듈만 팝업으로 띄울 수도 있겠더라구요.
아직 그건 안해봤어요 ^^
폴더명을 바꿔서 올려주심 안되나요? 이미 소마를 쓰고 있는데, FTP로 폴더명을 바꾸니까 에러가 나네요 ㅡㅡ; 잘 몰라서 헤매고 있습니다.. .힝...
괜히 덮어쓰기 하면 기존에 쓰던것에 대한 에러의 부담감이 넘 커서요 ^^; 바꿔주시면 정말 감사하겠습니다....(__);
제가 새로 만들어놓은 파일을 아직 확인해보시지 않으신것 같네요. board_gallary_pop.zip에 있습니다. 이름 바꿔서 테스트를 해봤어야하는데 아직 못해봤습니다. 모듈이름 전체를 바꿔봤는데 곧 테스트 해보겠습니다. 별 문제가 없을 것이라고 생각은 들지만...
잠순이 버젼이라고 해서 특별할 것은 없는데...그냥 내맘대로 고치다보니 사용하려는 사람이 제한적일 것 같아서 그냥 잠순이 버젼이라고 했습니다 ^^
이렇게 뜨는데 원인이 뭔가요??
한가지 빠진게 있군요. 그 함수 아래에 가면 불러오는 파일이 하나더 있어요. 보통 다른 분이 수정한 파일을 보고 하다보니까 실수가 약간 있는것 같아요.
함수 구조를 보면
class board_gallary_pop extends zModuleManager {
function board() {
parent::zModuleManager();
}
}
이런식으로 되어있는 경우가 가끔씩 있을거에요...개인적인 생각인데 아래 함수 부분도 수정을 해야하지 않나 싶어요.
class board_gallary_pop extends zModuleManager {
function board_gallary_pop() {
parent::zModuleManager();
}
}
이런식으로 사용하는 것이 맞지않나 싶어요.
저희 사이트 소마 갤러리에서 작은 이미지 삭제와 본문란에 이미지 크기를 원본대로 게재하는 방법문의
다름이 아니라 저희 아래 사이트http://cardhome11.cafe24.com/bbs5/?sid=135 에서 이미지를 680*544 픽셀로 게재함.
질문1] 그런데 본문에 이 이미지가 자동으로 전부 540*429픽셀로 축소되어 게재되는 데, 이걸 원본대로 680*544로 게재하려면 어디서 무얼 수정해야 하나요 ?
http://cardhome11.cafe24.com/bbs5/?sid=135&article_srl=223
질문2]바로 위 같은 본문란에서 이 큰 이미지 504*429 바로 위에 작은 140*105 픽셀 작은 섬네일이 있음 ... 이 게 아주 보기 싫어요~!
이 작은 섬네일을 삭제 하려면 어디서 변경해야 하나요 ?
안녕하세요 "아이노코"님 질문을 생각해봤습니다. 일단 이미지갤러리는 1개 이상의 이미지를 첨부할때 보기좋게 정렬하려고 사용합니다. 즉, 4개의 이미지를 삽입하는 경우 작은 이미지 4개가 위에 있고 밑에 선택된 이미지 하나가 크게 나오는 구조입니다.님 홈페이지를 살펴보니 대부분의 이미지 게시물이 1개의 첨부파일을 갖고있는 듯합니다. 이 경우 이미지 갤러리를 사용하기보다는 본문에 추가를 추천해드리고 싶습니다.
사용법은 첨부파일을 올리고 이미지갤러리 체크를 해제 해줍니다. 그리고 본문에 추가 버튼을 이용해서 본문에 이미지를 삽입하는 것입니다.



와아.. 넘 멋집니다.
예쁘게 잘 쓰겠슴다.. 이미지를 편하게 팝업으로 볼 수 있다는게 넘 좋네염~~^^
고생 많으셨슴다..~^^** 감사^^