사이드 메뉴 현재 페이지만 출력 문의

사이드 메뉴 현재 페이지만 출력 문의

QA

사이드 메뉴 현재 페이지만 출력 문의

답변 4

본문

현재는 아래 사진처럼 전체 메뉴가 다 나오는데요

현제 페이지 그룹의 메뉴만 나오게 하고 싶습니다..

3717413063_1535938837.2853.jpg

 

아래는 해당 소스입니다


 <nav id="gnb">
        <h2>메인메뉴</h2>
        <ul id="gnb_1dul">
            <?php
            $sql = " select *
                        from {$g5['menu_table']}
                        where me_use = '1'
                          and length(me_code) = '2'
                        order by me_order, me_id ";
            $result = sql_query($sql, false);
            $gnb_zindex = 999; // gnb_1dli z-index 값 설정용
   
            for ($i=0; $row=sql_fetch_array($result); $i++) {
            ?>
            <li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
                <a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo
    $row['me_name'] ?></a>
                <?php
                $sql2 = " select *
                            from {$g5['menu_table']}
                            where me_use = '1'
                              and length(me_code) = '4'
                              and substring(me_code, 1, 2) = '{$row['me_code']}'
                            order by me_order, me_id ";
                $result2 = sql_query($sql2);
    
          //좌측 서브메뉴 전체 리스트에서 현재 페이지에 해당하는 대메뉴 리스트만 보여줌
            if ( ($row['me_name']==$board['bo_subject'])||($row['me_name']==$g5['title']) ) {
                echo ("<script language='javascript'> display_submenu(" .$i. " ); </script> ");
            }
   
            for ($k=0; $row2=sql_fetch_array($result2); $k++) {
                if($k == 0)
                    echo '<ul>'.PHP_EOL;
            ?>
                <a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" ><li class="leftmenu_s"><?php echo $row2['me_name'] ?></li></a>
            <?php 
                //좌측 서브메뉴 전체 리스트에서 현재 페이지에 해당하는 대메뉴 리스트만 보여줌
                if ( ($row2['me_name']==$board['bo_subject'])||($row2['me_name']==$g5['title']) ) {
                    echo ("<script language='javascript'> display_submenu(" .$i. " ); </script> ");
                }
            }
            if($k > 0)
                echo '</ul>'.PHP_EOL;
            ?>
            </li>
            <?php
            }
            if ($i == 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>
    </nav>
 

이 질문에 댓글 쓰기 :

답변 4

제가 사용중인 사이드메뉴입니다. 참고가 될런지요?

 

<?php
if (!defined('_GNUBOARD_')) exit;

if($bo_table){
$menu_url = G5_URL."/bbs/board.php?bo_table=".$bo_table;
}else{
$menu_url = G5_URL.$_SERVER['REQUEST_URI'];
}
$menu = sql_fetch(" select * from {$g5['menu_table']} where me_use = '1' and me_link = '$menu_url' ");
$me_code = substr($menu['me_code'],0,2);
?>

<style>
.fs-category{margin:20px;padding:10px 10px;border:1px solid #ccc}
.fs_category ul{width:160px;margin:0 auto;}
.fs-category>li>a{font-size:14px;font-weight:700;color:rgba(80,80,80,0.3)}
.fs-category>li>a>.fa{color:rgba(57,61,70,0.3)}
.fs-category .sub-category{margin-top:10px;background-color:rgba(41,45,54,0.0)}
.fs-category .sub-category>li{padding:5px;}
.fs-category .sub-category>li>a{display:block;overflow:hidden;padding:5px 10px;color:#808080; text-overflow:ellipsis; white-space:nowrap;background-color:rgba(41,45,54,0.0); -webkit-transition:all .2s ease;-moz-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}
.fs-category .sub-category>li.active>a,.fs-category .sub-category>li>a:hover{font-weight:700;color:#fa6000;background-color:rgba(9,13,22,0.0)}
.fs-category #empty{color:#efefef;text-align:center;}
.fs-category #empty a{color:#fa0;}
</style>

<div class="fs-category">
  <ul>
 <li>
  <ul class="sub-category">
  <?php
   $sql2 = " select * from {$g5['menu_table']} where me_use = '1' and substring(me_code, 1, 2) = '$me_code' order by me_order, me_id ";
   $result2 = sql_query($sql2);
   for ($k=0; $row2=sql_fetch_array($result2); $k++) {
  ?>
   <li<?php if($row2[me_link] == $menu_url){ echo " class=\"active edge edge-small edge-bottom-right\""; } ?>><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?></a>
 <?php } ?>
  </ul>
 </li>
  </ul>
</div>

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 125,873
© SIRSOFT
현재 페이지 제일 처음으로