웹마스터 팁

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

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

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

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


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

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


<!--@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인 창으로 열립니다.


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

<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 을 보이고,

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

<!--#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) 기타

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

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

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

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

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

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

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

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

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

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


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

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

제목 글쓴이 날짜
게시판글 엑셀 파일 보내기 php7용 file 황금날개 2018.06.05
외부 페이지에서 회원 프로필 정보(확장변수) 나타내기 한꼬마 2015.10.14
[XE수정] 관리자페이지 회원리스트를 내맘대로 브레인630 2015.08.11
자신이 쓴 글에 특정유저 댓글을 차단 Ikoo 2015.06.20
확장변수 검색시 범위 설정해서 검색하는 팁. [2] 키다리아저씨2 2015.06.16
구글 웹폰트 부분으로 적용하기 착한동구 2015.06.05
리스트에 스크랩 버튼을 뺴는 코드입니다. [3] 착한악마 2015.04.30
확장변수에 시분초 추가하기 [1] file 해떨 2015.04.15
정렬을 사용자정의값으로 한 경우 저장이 안 되는 현상 수정 [1] sejin7940 2015.01.06
확장변수 정렬 방법 아름다운청년1 2014.12.31
파일첨부 된 글을 게시글 이동시, 사용자정의 값이 전부 삭제되는 버그 패치 [5] sejin7940 2014.11.20
게시판 글 엑셀로 출력하기(확장변수 포함) [15] 한이73 2014.07.17
관리자가 글 쓸때는 분류를 선택 안 해도 등록되도록 (공지글을 쓸때를 위해) 개선 [2] sejin7940 2014.06.21
마이피플봇을 이용한 마이피플 알리미 (푸시서비스) 이용하기 [4] garnecia 2014.06.01
게시판 글쓰기 폼은 없이 확장변수만 표시할 수 있는 게시판 만들기 (for sketchbook5 최신버전 기준) [2] 큰성565 2014.05.02
*LI-NA님의 큰 선물* SKETCHBOOK5 (최신버전)에서 특정 확장변수를 추천하는 사람에게만 공개하도록 하는 방법 [4] file 큰성565 2014.04.30
게시판에 대해 닉네임,이름 등의 정렬을 추가하는 방법 [1] sejin7940 2014.03.09
코어 수정 없이 스킨 수정만으로 게시판 목록에 유튜브,비메오 썸네일 출력 [2] foret 2014.02.23
게시판 목록에서 새창 띄워서 다른 형태 나오게 하기 [3] foret 2014.02.23
XE 1.7.4 새로운 우편번호 체계에서 나머지주소 관련 사용실수 방지방법입니다 [1] sejin7940 2014.02.07