페이지에서 1차, 2차메뉴 현재위치 적용 팁 > 그누보드5 팁자료실

그누보드5 팁자료실

페이지에서 1차, 2차메뉴 현재위치 적용 팁 정보

페이지에서 1차, 2차메뉴 현재위치 적용 팁

본문

안녕하세요~

스킨을 제작하면서 새롭게 알게된 부분이 있어서 이렇게 팁 아닌 팁을 올려볼까 합니다.

현재위치 적용 방법입니다. 문의글에 항상 올라오는 부분이기도 합니다.

이 부분에서 많은 팁들이 있기도 합니다. 

 

게시판 에서는 원하는 위치에 <?php echo $board['bo_subject'] ?> 하면 쉽게 출력이 되죠^^

제가 공유할 팁은 게시판이 아닌 일반 페이지 즉 test.php 라는 페이지에서 현재위치를 적용하고자 할 때 사용하시면 좋을 것 같습니다.

 

고수님들은 다 아시는 부분이라 저처럼 초보자의 입장에서 조금이나마 도움이 될까 생각해 봅니다.

소스코드는 아래와 같습니다.


<?php
$current_url = $_SERVER['REQUEST_URI'];
$menu_datas = get_menu_db(0, true);
 
// 1차 메뉴와 2차 메뉴 초기화
$first_menu_name = ''; // 1차 메뉴명
$second_menu_name = ''; // 2차 메뉴명
 
foreach ($menu_datas as $row) {
    if ($row['me_name'] === '회사소개') {
        $first_menu_name = $row['me_name']; // 1차 메뉴명 설정
 
        foreach ((array)$row['sub'] as $row2) {
            if ($row2['me_link'] === $current_url) {
                $second_menu_name = $row2['me_name']; // 2차 메뉴명 설정
                break;
            }
        }
       
        break;
    }
}
 
// 현재 위치 출력
if ($first_menu_name && $second_menu_name) {
    echo "<h3>{$second_menu_name}</h3>";
    echo "<span><i class='fa fa-home' aria-hidden='true'></i> <i class='fa fa-angle-right arr' aria-hidden='true'></i> {$first_menu_name} <i class='fa fa-angle-right arr' aria-hidden='true'></i> {$second_menu_name} </span>";
}
?>

 

현재 페이지의 URL을 기반으로 1차메뉴와 2차메뉴를 비교 한후 현재 위치를 표시 해주는 방식입니다.

예를 들어 1차메뉴가 회사소개 2차메뉴가 회사소개, 오시는 길, 회사 연혁 이라고 할때 

page.php - 회사소개, page2.php - 회사연혁, page3.php - 오시는길 이렇게 있다고 가정할때

위의 소스를 각 페이지에 원하는 위치에 적용하시면 됩니다.

 

또는 nav.inc.php 이렇게 원하시는 파일로 만드셔서 인클루드 하셔도 됩니다.

 

결과는 홈 > 1차메뉴 회사소개 > 2차메뉴 회사연혁 이렇게 출력이 된다는 얘기입니다.

 

초보자 이다 보니 설명또한 어렵네요 이해해 주시길 바랍니다.

 

오늘도 좋은 하루 되세요~!!

추천
6

댓글 19개

전체 2,450 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT