웹마스터 팁

음악 게시판 스킨을 만들어서 올렸는데 다른 스킨에도 적용해보시라고 정리해서 팁을 올려봅니다.

더 좋은 방법이 있을지도 모르겠지만 일단 ㅎㅎ.

영상 말고 노래 가사 보이기나 뭐 다른 거에도 응용할 수 있겠죠.

예를 들어 가사보기를 만들어 보도록 하겠습니다.


(1) 일단 header.html 이나 _setting.html 의 리스트 형태 정하는 부분에 이 비슷한 게 있습니다.

게시판 형태를 원하는 모습으로 나오게 하고 싶을 때 쓰는 부분입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!--@if($listStyle=='gallery')-->
    {@ $module_info->default_style = 'gallery'}
<!--@elseif($listStyle=='webzine')-->
    {@ $module_info->default_style = 'webzine'}
<!--@elseif($listStyle=='list')-->
    {@ $module_info->default_style = 'list'}
<!--@elseif($listStyle=='card')-->
    {@ $module_info->default_style = 'card'} 
<!--@elseif($listStyle=='video')-->
    {@ $module_info->default_style = 'video'} 
 <!--@elseif($listStyle=='videolist')-->
    {@ $module_info->default_style = 'videolist'}
 
 <!--@elseif($listStyle=='가사')-->
    {@ $module_info->default_style = '가사'}
<!--@elseif(!in_array($module_info->default_style,array('list','webzine','gallery','card','blog','video','videolist','가사')))-->
    {@ $module_info->default_style = 'list'}
<!--@end-->


에 추가합니다. 이런 식으로. 저는 창 두개를 하나는 비디오용, 하나는 비디오리스트용으로 만들 생각이어서 video, videolist를 추가했죠. 여기에 가사용 listStyle 추가.


(2)

(2-1) 이후 만약 원하시는게 글목록(다수의 글)을 사용하는 거라면

목록 loop 바깥쪽에 <a href="{getUrl('listStyle','videolist','act','','document_srl','')}" target="_blank">비디오리스트 보기</a>

를 추가하시면 새창으로 videolist 의 형태를 가진 글목록이 열리고,


(2-2) 원하시는게 해당 글의 내용을 사용하는 거라면

목록(_style.list.html)에서 loop="$document_list=>$no,$document" 가 들어가 있는 곳 안쪽으로

<a href="{getUrl('document_srl',$document->document_srl,'listStyle','video','page','')}" target="_blank">비디오 보기</a>

를 추가하시고 클릭하시면 해당 document_srl 이 listStyle video인 창으로 열립니다.


가사를 추가해줘야하는데 글내용을 써야할 거 같으니

1
<a href="{getUrl('document_srl',$document->document_srl,'listStyle','가사','page','')}" target="_blank">가사 보기</a>

를 추가해야겠죠.


(3) 그럼 이제 list.html 로 가셔서 listStyle 이 video인 창과 videolist인 창의 스킨경로를 정해줘야합니다. 가사보기도.


 (3-1) list.html 을 열어 원래 있던 리스트소스의 시작 부분에

<include cond="$module_info->default_style=='video'" target="video.html" /> 를 추가하고, 원래 있던 소스를
<block cond="$module_info->default_style!='video' && $module_info->default_style!='videolist'">

</block>

으로 감싸면, video 일때는 video.html 을 보이고, 아닐때는 원래 있는 list.html 내용을 보여라 가 됩니다.


(3-2) 그런데 이경우 인클루드 위치에 주의하셔야합니다. 꼭 제일 위에 쓴 내용이 들어간 부분이 video.html 앞에 위치해야해요.

만약에 header.html 에 넣으셨는데,

<include cond="$module_info->default_style=='video'" target="video.html" />
<block cond="$module_info->default_style!='video' && $module_info->default_style!='videolist'">

<!--#include("_header.html")-->

</block>

이렇게 되면 안됩니다. 옳은 예는

<!--#include("_header.html")-->

<include cond="$module_info->default_style=='video'" target="video.html" />
<block cond="$module_info->default_style!='video' && $module_info->default_style!='videolist'">

</block>


저는 게시판 제목이 출력되도록 해놨는데 그게 비디오 화면에 나오는게 싫어서 설정을 모조리 setting.html 로 분리했고요.

제일 처음에 세팅에서 liststyle 로 video와 videolist를 추가해놓고 거기서 정해진 변수로 다음과 같이 적었습니다.

셋팅을 제일 먼저 출력 후 listStyle 이 video면 video.html, videolist면 videolist.html 을 보이고,

아니면 원래 있던 게시판 목록을 보이라는 뜻입니다. 그래서 이렇게...

1
2
3
4
5
6
7
<!--#include("_setting.html")-->
<include cond="$module_info->default_style=='가사'" target="가사.html" />
<include cond="$module_info->default_style=='video'" target="video.html" />
<include cond="$module_info->default_style=='videolist'" target="videolist.html" />
<block cond="$module_info->default_style!='video' && $module_info->default_style!='videolist'">
<!--#include("_header.html")-->
</block>


분리할때 중요한 점은 setting.html 에 css, js파일 링크를 해놨다면 그게 필요한 다른 화면 예를 들어 write.form.html 등에 css 파일이 안들어갈 수 있으니 다른 곳도 잘살펴보시고 넣을 곳에 넣어주셔야합니다. 안 그러면 ㅇㅅㅇ; 저는 책임지지 않아요.


(4) 

(4-1) 이제 video.html 을 만들어서 넣으시면 링크를 눌렀을때 video.html 이 뜨고, 이 링크는 위쪽에서 보셨듯이 글내용을 사용하기 위한 링크이므로, 글내용에서 쓰는 모든 변수를 쓸 수 있습니다.

{$oDocument->getTitle()} (제목) {$oDocument->getContent()} (내용) {$oDocument->getUserID()} (글쓴이) 이런 애들이죠.


(4-2) videolist.html 은 글목록을 사용하기 위한 링크이므로 글 목록에서 쓰는 변수를 쓰심 됩니다.

{$document->getTitle($module_info->subject_cut_size)} (자른제목) {$document->getSummary($module_info->content_cut_size)} (요약)


가사라면 아마 글 내용을 사용했을 거니까 가사.html 에 다음을 {$oDocument->getContent()}  달랑 넣고,

레이아웃이 안뜨게 해야할테니 제일 처음에 {Context::set('layout','none')}를 쓰시면 됩니다.


(5) 기타

만약 확장변수명이 비디오라면

1
<!--@if($val->eid=='video')-->

만약 확장변수명이 비디오가 아니라면

1
<!--@if($val->eid!='video')-->

만약 확장변수명 비디오에 값이 있다면

1
<!--@if($document->getExtraEidValue('video'))-->

목록에서 확장변수명 video인 값

1
{$document->getExtraEidValue('video')}

확장변수에 youtu 라는 내용이 들어가 있다면

1
2
{@ $extras = $val->getValueHTML();}
 <!--@if(preg_match('/youtu/', $extras))-->


p.s 체크박스 배열 만들어 post 로 넘겨서 변수로 이용하고, 그 변수의 갯수대로 돌리는 거 아시는 분 계신가요. ㅠ_ㅠ;

선택듣기를 만들고 싶은데...  제가 진짜 하나도 몰라서!! 체크박스를 checkbox로 쓴다는 것만 압니다. ㅎㅎ

제목 글쓴이 날짜
사랑비Bgm 플레이기 설치하고 제어하기 [5] file 팔공산 2008.11.22
OpenSSL 웹에 직접 구축하기 [2] file 워리도꾸 2016.02.16
스케치북 갤러리 제목에 카테고리 추가하기. [1] 보보2 2017.07.17
XE 공식(?) 버튼 삽입하기 [다들 알지도 모르겠네요,,] [77] [1] 웹엔진 2011.02.28
글등록시 포인트차감으로 등록불가 설정시 개별설정이 아닌 전체 설정 기준으로만 사용할 경우는 적용 안 되는 버그 수정법 sejin7940 2017.08.23
폰갭 자기 전화번호 추출 한꼬마 2017.08.14
폰갭 버전 업데이트 후 push 안되시는 분들께.. 한꼬마 2017.08.09
포인트 적립 횟수 일별 제한하기 (게시글 및 댓글 작성시) Redback 2017.06.18
다음 우편번호 5자리 적용 [1] file 뒤늦게입문 2017.03.15
HTML, CSS 등 코드를 깔끔하게 정렬 [6] file 참치.k 2013.01.11
SASS? CSS확장판 키큰아이 2017.05.09
사용자정의에서 URL형, email형, textarea 형등에서도 기본값 인식하게 하려면 sejin7940 2017.04.25
비밀글에 대해서도 썸네일이미지는 출력되도록 하고 싶으면 sejin7940 2017.04.12
제로보드 사용시 아이프레임의 크기를 내용에 따라 바꿔주는 스크립트 [7] 쿨리안 2003.06.28
게시글 확장변수 순으로 정렬하기 (2010.01.18 13:18 수정) [24] June Oh 2010.01.11
인기글 [1] kdp 2015.05.07
[주옥시리즈]최신글,인기글 위젯에 댓글수 표기하기 [1] socialskyo 2013.10.01
.htaccess 파일 관련 팁(웹 사이트 퍼포먼스 향상 및 트래픽 절감 효과) [21] file 서시빈목 2013.10.22
압축 풀어 설치했던 XE를 git으로 변환하기 [6] 기진곰 2015.02.25
반응형 기본 개념 Ansi™ 2017.02.27