서브메뉴에 addclass로 active를 추가할수 없을까요?

서브메뉴에 addclass로 active를 추가할수 없을까요?

QA

서브메뉴에 addclass로 active를 추가할수 없을까요?

본문

안녕하세요 그누보드 왕초보입니다..

 

리눅스 centos7버전에 nginx로 그누보드 5.4.2.8 최신버전으로  빌더,테마를 설치하지 않고

그누보드 설치시 제공되는 basic 테마로 작업을 하고 있습니다.

 

서브메뉴를 구성하고 있는 상태이구요. theme안 head.php에다가 ($sub_page는 서브페이지 파일로 만든 연결용 함수입니다.)

 



<?php if ($sub_page || $bo_table) { ?>
    <div class="sub_head sub1 hidden-xs">

    </div>
    <div class="sub_menu container hidden-xs">
        <ul class="sub_ul row">
            <?php
            $k = 0;
            ?>

                <?php
                if (empty($menu_datas2)) {
                    foreach ($menu_datas as $row) {
                        foreach ((array) $row['sub'] as $row2) {
                            if (strpos($row2['me_link'], $sub_page) !== false) {
                                $menu_on2 = $row2;
                                $menu_datas2 = $row['sub'];
                                break;
                            }

                            if (!empty($bo_table)) {
                                if (strpos($row2['me_link'], $bo_table) !== false) {
                                    $menu_on2 = $row2;
                                    $menu_datas2 = $row['sub'];
                                    break;
                                }
                            }
                        }
                    }
                }
                $menu_on;
                foreach ($menu_datas2 as $row) {
                    if (empty($row)) continue;
                    if (empty($menu_on2)) {
                        if (strpos($row['me_link'], $co_id) !== false) $menu_on2 = $row;

                    }
                    ?>
            <li class="col sub_category <?php if($sub_page=="sub_category") echo 'class="active"';?>"><a href="<?php echo $row['me_link']; ?>"><?php echo $row['me_name'] ?></a> </li>
                    <?php
                    $k++;
                }
                if ($k == 0) {  ?>
            <li id="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <br><a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 > 환경설정 > 메뉴설정</a>에서 설정하세요.<?php } ?></li>
        <?php } ?>

        </ul>
    </div>
<?php } ?>

 

를 추가한 상태이구요 이렇게 추가한 내용들은

3730852952_1599542323.7902.jpg

 

하단 부분에 2차 서브메뉴로 출력되도록 하였습니다.  관리자에서 메뉴 출력은

3730852952_1599542394.7866.png

이런 상태로 해놓은 상태라 서브메뉴들이 하단에 따로 출력되도록 하였습니다.

 

여기서 질문이  <li class="col sub_category></li>로 서브메뉴들을 출력하게 해놓았는데 해당 페이지에 들어갔을시 on 이나 active 클래스를 넣을 방법이 없을까요? ㅜㅜ php너무 어려워서..조언을 구합니다.

이 질문에 댓글 쓰기 :

답변 1

<?php if($sub_page=="sub_category") echo 'class="active"';?>
->
<?php if (strpos($_SERVER['REQUEST_URI'], $row['me_link']) !== false) echo 'class="active"'; ?>

정말감사합니다

알려주신 내용에서 class="active"라는게 클래스명이 이미 만들어진곳에다가 들어가져 버려서
<li class="col sub_category <?php if (strpos($_SERVER['REQUEST_URI'], $row['me_link']) !== false) echo "active"; ?>">
이렇게 해서 해결하였습니다.

항상 도움주셔서 감사합니다 ㅜㅜ

답변을 작성하시기 전에 로그인 해주세요.
전체 59,516
QA 내용 검색

회원로그인

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