테스트 사이트 - 개발 중인 베타 버전입니다

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

안녕하세요~

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

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

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

 

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

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

 

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

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

[code]

<?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>";

}

?>

[/code]

 

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

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

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

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

 

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

 

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

 

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

 

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

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 19개

그제도 메뉴 보면서 그 생각했는데
감사합니다 ?
@소시 추천감사드립니다.
유용하네요 감사합니다.
@브러운아이 댓글 감사합니다.
웹메이킹 님은 천재입니다.
@myfree 과찬이십니다. 많이 부족한 초보자입니다...^^
내용 관리 아닌 일반 페이지에 필요한 좋은 내용 감사 합니다.
@들레아빠 댓글 감사합니다
@써맨 댓글 감사합니다
@너나잘해 댓글 감사합니다
댓글과 추천해 주신 모든 분들께 감사드립니다
오 좋은 팁이네요 감사합니다
@DawnDew 댓글 감사합니다.
좋은 팁 감사합니다.
@크리스휘 댓글 감사합니다
스크랩해갑니다 감사합니다.

선생님 답변 바랍니다. 

게시판 목록

그누보드5 팁자료실

글쓰기
🐛 버그신고