사이트 페이지를 배열로 정리 하기.. > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

사이트 페이지를 배열로 정리 하기.. 정보

사이트 페이지를 배열로 정리 하기..

본문

유용할지는 모르겠습니다만^^

많은 분들이 홈페이지를 제작하시면서 각 페이지마다 head.php 가 조금씩 다르거나

다른 파일로 대체해야 할 때가 있습니다..

저는 홈페이지 작업하면서 이런일이 많아서 직접 코드를 짜놓고 사용합니다..^^;

$page_array = Array(
      Array("index.php"),          // Main
      Array("대메뉴 타이틀",         // sub_01
       Array("소메뉴 타이틀",
         "소메뉴 타이틀2"),
       Array("파일명",
         "파일명")
      ),
      Array("대메뉴 타이틀2",          // sub_02
       Array("소메뉴 타이틀",
         "소메뉴 타이틀2"),
       Array("파일명",
         "파일명")
      )
     );

$php_self = explode("/", $_SERVER[PHP_SELF]);
$url_cnt = count($php_self) - 1;
$this_page = $php_self[$url_cnt];

## 게시판 일경우
if($bo_table) $this_page = $bo_table;


## 메인 페이지
$main_arr = $page_array[0];
$main_page = false;
if(in_array($this_page, $main_arr)) {
 $main_page = true;
}

for($i=1; $i<count($page_array); $i++) {
 if(in_array($this_page, $page_array[$i][2])) {
  $title_key  = $i;
  $title_name = $page_array[$i][0];
  $page_key = array_search($this_page, $page_array[$i][2]);
  $page_name = $page_array[$i][1][$page_key];
 }
}

이렇게 전체 사이트맵을 head.php에 Array로 정리 해놓으시면

각 대메뉴는 $title_key 에 메뉴 순서가 나오고..
소메뉴는 $page_key에 메뉴 순서가 나옵니다..
또한 $title_name에는 대메뉴 이름
$page_name은 소메뉴 이름이 각각 표시됩니다..

파일명에는 게시판일경우 bo_table 값을 넣으셔도 됩니다..

활용 예로 보면
<?/*페이지 위치*/?>
HOME > <?=$title_name?> > <?=$page_name?>

이런식으로 네비게이션을 나타 낼 수 있겠구요...


<?/*페이지 타이틀*/?>
<img src="/image/sub_<?=sprintf("%02d", $title_key)?>/title_<?=sprintf("%02d", ($page_key+1))?>.gif">

이렇게 각메뉴 별로 타이틀 이미지를 지정 하실 수도 있겠습니다~

컨텐츠 내용도 단순히 이미지화시켜서 넣는 페이지라면

페이지타이틀과 동일한 방법을 사용하신다면

소스 자체가 아래와 같이 깔끔 하게 정리 될 수도 있습니다.
<?
 include_once("./_common.php");
 include("./_head.php");
?>
 <img src="/image/sub_<?=sprintf("%02d", $title_key)?>/content_<?=sprintf("%02d", ($page_key+1)).jpg" alt="" />
<?
 include("./_tail.php");
?>


사용자에 따라 이 소스가 불편 할 수도 있겠지만..

저는 상당히 만족스럽게 사용 중입니다..^^

추천
1
  • 복사

댓글 5개

© SIRSOFT
현재 페이지 제일 처음으로