채택완료

일반 페이지 생성 어떻게 하시나요?

2026-06-10 (수) 11:41:52 220
저는 테마로 홈페이지 생성하고 해당 테마의 헤더, 푸터도 적용해야하니
테마 안에 /sub/ 폴더를 두고 이 안에 일반 서브페이지들을 넣어놓고 홈페이지를 만들고 있었는데,
그렇다보니 한 서브페이지의 링크가 길어져서 이게 맞나 싶어서
gpt 한테 물어보니까 
테마 안이 아닌 theme 와 같은 깊이로 /sub/ 폴더를 만들고 이 폴더 내에서 _common.php 과  head.php, tail.php include 가 일반적이라고 해서요

근데 혹시라도 홈페이지 운영 중 헤더/푸터를 변경하거나 아예 테마를 바꿔서 새 디자인으로 변경하고 싶을 때 최상위 /sub/ 로 만드는 홈페이지면 복잡해질거 같기도하고..

다들 어떤식으로 구성하시나요?

답변 3개 / 댓글 5개

채택된 답변
+20 포인트
2026-06-10 (수) 13:12:03
왜 일반페이지를 어렵게 생각하시나요 이미 컨텐트 페이지 기능이 있는데요.
게시판관리>내용관리 에서 페이지생성하시면됩니다.
그리고 이컨텐트 스킨을 응용하시기 바랍니다.
https://dass000.co.kr/bbs/content.php?co_id=Business

답변에 대한 댓글 3개

컨텐트 페이지로는 개인정보처리방침이나 이용약관 같은 자주 변경하지 않는거로만 사용하고 있습니다.
서브페이지의 경우 관리 측면에서 내부에서만 보여야하는 버튼이나 기능들을 PHP 코드로 심어 놓는 경우가 있기도 해서요..
서브페이지 자체를 content.php 로 만들 생각을 못 했네요.
답변 감사합니다.
좋은 참고가 되었어요. 홈페이지 좀 둘러봤습니다..!!
내그래서 스킨자료실에보시면 다음 기능을 적용해놓으면 편리하답니다.
https://sir.kr/boards/g5_skin/54836?search_type=subject_content&keyword=%EB%82%B4%EC%9A%A9%EA%B4%80%EB%A6%AC
참고로 서브 페이지에 서도 content 생성된페이지를 호출하면 된다라는 점도 참고하시구요
https://dass000.co.kr/
2026-06-10 (수) 15:04:23
그렇게 하지마시구요 루트에 p.php 를 만드시고 선택적 인클루드를 하게 하세요.
도메인.com/p.php?pid=test
이런식으로 되는거죠.

주요 파일 및 head 와 tail 붙이는건 아실테니까 설명은 넘어가고

Copy
$pid = isset($_GET['pid']) ? $_GET['pid'] : '';

if (!preg_match('/^[a-zA-Z0-9_-]+$/', $pid)) {
exit('잘못된 접근입니다.');
}

$file = __DIR__ . '/include/' . $pid . '.php';

if (!file_exists($file)) {
exit('페이지가 없습니다.');
}

include $file;


이렇게 하시면 pid 가 /include/ 폴더 내의 php 파일 명이 되는것이고
만약 해당 파일명이 없으면 경고가 나오게 되는거죠.

 
Copy
if($config['cf_theme'] == '테마폴더명') { ... }

/page 폴더 안에 넣고 위처럼 테마변수 이용해 분기해 처리합니다.

답변에 대한 댓글 2개

답변 감사합니다.
그럼 테마 변경 및 서브페이지 내용 변경할 일이 있다면 서브페이지 전체 다
if($config['cf_theme'] == '테마폴더명') { ... } 로 코드 다시 넣어서 분기처리하시는걸까요?
다르게 처리할 코드가 적으면 페이지 내 조건문 처리하고,
코드량 많으면 A 테마면 A.php 인클루드, B테마면 B.php 인클루드 되게 하는 식으로 처리합니다. 테마명과 파일명을 같게하면 코드가 간결해집니다.

답변을 작성하려면 로그인이 필요합니다.