안녕하세요 그누보드 왕초보입니다..
리눅스 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 } ?>
를 추가한 상태이구요 이렇게 추가한 내용들은

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

이런 상태로 해놓은 상태라 서브메뉴들이 하단에 따로 출력되도록 하였습니다.
여기서 질문이 <li class="col sub_category></li>로 서브메뉴들을 출력하게 해놓았는데 해당 페이지에 들어갔을시 on 이나 active 클래스를 넣을 방법이 없을까요? ㅜㅜ php너무 어려워서..조언을 구합니다.
답변 1개 / 댓글 1개
<?php if($sub_page=="sub_category") echo 'class="active"';?>
->
<?php if (strpos($_SERVER['REQUEST_URI'], $row['me_link']) !== false) echo 'class="active"'; ?>
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
알려주신 내용에서 class="active"라는게 클래스명이 이미 만들어진곳에다가 들어가져 버려서
<li class="col sub_category <?php if (strpos($_SERVER['REQUEST_URI'], $row['me_link']) !== false) echo "active"; ?>">
이렇게 해서 해결하였습니다.
항상 도움주셔서 감사합니다 ㅜㅜ