메인디자인 서브디자인 여러개 사용하기 정보
그누호환 메인디자인 서브디자인 여러개 사용하기본문
그누보드에서 보면 하나의 head.php와 tail.php을 사용하고
중간메인부분은 main.php로 이루어져 있습니다.
게시판 관리에서 하나를 생성하여 위 아래 파일 경로에 보통.
../경로/head.php , ../경로/tail.php
라고 지정하여 메인 디자인을 게시판 위 아래로 include하여 사용합니다.
이때, 위 아래 디자인을 다른 서브 디자인으로 만들어
예를 들어 head1.php 와 tail1.php 를 만들어 게시판 위 아래 파일 경로를 지정하면
임의의 메인페이지를 바꿀 수 있습니다.
여기서 게시판 말고 기본 php페이지에서 위 아래 파일 경로를
head1.php 와 tail1.php 에 대한 include 지정을 하면 오류가 납니다.
왜 그럴까요?
방법은 그누보드경로에 index.php라고 하는 파일이 있습니다.
{그누보드는 템플릿(프로그램페이지 따로 디자인 페이지 따로) 구조로 되어 있음}
index.php 맨 아래 줄에 보시면
------------------------------------------------index.php소스
switch (_DOCTYPE_) {
// NONE 는 상단과 하단 파일이 필요없는 TYPE
case "NONE" :
echo $ob_content;
break;
// STYLE 은 stylesheet 등만 적용하는 TYPE
case "STYLE" :
include './head.sub.php';
echo $ob_content;
include './tail.sub.php';
break;
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN" :
include './head.sub.php';
include './head.php';
echo $ob_content;
include './tail.php';
include './tail.sub.php';
break;
// 나머지 TYPE 은 오류
default :
if (!file_exists($doc) && $doc) {
echo "$doc 파일이 존재하는지 확인하여 주십시오.";
exit;
}
echo "_DOCTYPE_ 오류 : NONE , STYLE , DESIGN 중 하나를 사용하세요.<p>";
echo $ob_content;
break;
}
----------------------------------index.php 소스 끝
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN" :
include './head.sub.php';
include './head.php';
echo $ob_content;
include './tail.php';
include './tail.sub.php';
break;
!!!!위에 소스 부분 밑줄에!!!!
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN2" :
include './head.sub.php';
include './head1.php';
echo $ob_content;
include './tail1.php';
include './tail.sub.php';
break;
라고 지정합니다.
그후 만든 기본 php파일 맨 위에 소스에
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN2"); // DESIGN을 DESIGN2로 바꿈
$html_title = "그누보드3";
?>
를 교체합니다.
그럼 보통 php에서 위 아래 <? include ?> 로 쓰는 것을 그누보드에서는
위와 같이 대처하실 수 있습니다.
다들 아시는 거 겠지만. 이거 알아내기 위해서 몇일을 돌아 다녔는지 모르겠습니다.^^
중간메인부분은 main.php로 이루어져 있습니다.
게시판 관리에서 하나를 생성하여 위 아래 파일 경로에 보통.
../경로/head.php , ../경로/tail.php
라고 지정하여 메인 디자인을 게시판 위 아래로 include하여 사용합니다.
이때, 위 아래 디자인을 다른 서브 디자인으로 만들어
예를 들어 head1.php 와 tail1.php 를 만들어 게시판 위 아래 파일 경로를 지정하면
임의의 메인페이지를 바꿀 수 있습니다.
여기서 게시판 말고 기본 php페이지에서 위 아래 파일 경로를
head1.php 와 tail1.php 에 대한 include 지정을 하면 오류가 납니다.
왜 그럴까요?
방법은 그누보드경로에 index.php라고 하는 파일이 있습니다.
{그누보드는 템플릿(프로그램페이지 따로 디자인 페이지 따로) 구조로 되어 있음}
index.php 맨 아래 줄에 보시면
------------------------------------------------index.php소스
switch (_DOCTYPE_) {
// NONE 는 상단과 하단 파일이 필요없는 TYPE
case "NONE" :
echo $ob_content;
break;
// STYLE 은 stylesheet 등만 적용하는 TYPE
case "STYLE" :
include './head.sub.php';
echo $ob_content;
include './tail.sub.php';
break;
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN" :
include './head.sub.php';
include './head.php';
echo $ob_content;
include './tail.php';
include './tail.sub.php';
break;
// 나머지 TYPE 은 오류
default :
if (!file_exists($doc) && $doc) {
echo "$doc 파일이 존재하는지 확인하여 주십시오.";
exit;
}
echo "_DOCTYPE_ 오류 : NONE , STYLE , DESIGN 중 하나를 사용하세요.<p>";
echo $ob_content;
break;
}
----------------------------------index.php 소스 끝
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN" :
include './head.sub.php';
include './head.php';
echo $ob_content;
include './tail.php';
include './tail.sub.php';
break;
!!!!위에 소스 부분 밑줄에!!!!
// DESIGN 은 상단, 하단 파일을 필요로 하는 TYPE
case "DESIGN2" :
include './head.sub.php';
include './head1.php';
echo $ob_content;
include './tail1.php';
include './tail.sub.php';
break;
라고 지정합니다.
그후 만든 기본 php파일 맨 위에 소스에
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN2"); // DESIGN을 DESIGN2로 바꿈
$html_title = "그누보드3";
?>
를 교체합니다.
그럼 보통 php에서 위 아래 <? include ?> 로 쓰는 것을 그누보드에서는
위와 같이 대처하실 수 있습니다.
다들 아시는 거 겠지만. 이거 알아내기 위해서 몇일을 돌아 다녔는지 모르겠습니다.^^
추천
0
0
댓글 전체
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "NONE"); // NONE또는 STYLE로 바꿔서 사용해도 됩니다....
$html_title = "그누보드3";
?>
sub1.php <------ sub_head.php + sub_main.php + sub_tail.php
각각의 파일 상단에 none 값이나 style 값만 바꿔줘도 됩니다...
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "NONE"); // NONE또는 STYLE로 바꿔서 사용해도 됩니다....
$html_title = "그누보드3";
?>
sub1.php <------ sub_head.php + sub_main.php + sub_tail.php
각각의 파일 상단에 none 값이나 style 값만 바꿔줘도 됩니다...
저도 처음에는 이런 내용을 몰라서 고생했습니다.
이를 잘 이용한다면 다른 소스들과의 플러그인도 가능한 것 같습니다.
이를 잘 이용한다면 다른 소스들과의 플러그인도 가능한 것 같습니다.
꼭필요한팁알려주셔서고맙습니다.