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

자동 메뉴 생성에서 자꾸 실패해서 질문드려요. 채택완료

키스 2년 전 조회 2,378

아래와 같은 메뉴를 짰습니다. (평범한 목록 태그입니다)

 

</p>

<p><div id="header">

<div id="gnb">

<ul>

    <li><a class="b01" href="링크">대메뉴01</a>

       <ul class="s01">

          <li><a class="s0101" href="링크">소메뉴0101</a></li>

          <li><a class="s0102" href="링크">소메뉴0102</a></li>

       </ul>

    </li>

    <li><a class="b02" href="링크">대메뉴02</a>

       <ul class="s02">

          <li><a class="s0201" href="링크">소메뉴0201</a></li>

          <li><a class="s0202" href="링크">소메뉴0202</a></li>

       </ul>

    </li>

</ul>

</div>

</div>

 

이걸 아래처럼 바꾸려고 하는데요, (기존의 자동 메뉴 생성 foreach문입니다)

 

</p>

<p><ul class="nav topnav">

    <?php

    $menu_datas = get_menu_db(0, true);

    $gnb_zindex = 999; // gnb_1dli z-index 값 설정용

    $i = 0;

    foreach( $menu_datas as $row ){

    if( empty($row) ) continue;

    $add_class = (isset($row['sub']) && $row['sub']) ? 'gnb_al_li_plus' : '';

    ?>

    <li class="bmenu">

    <a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>"><?php echo $row['me_name'] ?><i class="icon-angle-down"></i></a>

    <?php

      $k = 0;

      foreach( (array) $row['sub'] as $row2 ){

      if( empty($row2) ) continue; 

      if($k == 0) </p>

<p>          echo '<ul class="smenu">'.PHP_EOL;

    ?>

        <li>

        <a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?></a>

        </li>

    <?php

      $k++;

      }   //end foreach $row2

      if($k > 0)

          echo '</ul>'.PHP_EOL;

    ?>

    </li>

                <?php

                  $i++;

                  }   //end foreach $row

                  if ($i == 0) {  ?>

    <li class="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 > 환경설정 > 메뉴설정</a>에서 설정하실 수 있습니다.<?php } ?></li>

                <?php } ?>

</ul>

 

자꾸 실패합니다. 어떻게 교체하는 것이 좋을까요?

 

특히 중요한 것은, 맨 위의 태그 코드에 있듯이... 대메뉴 b01, b02, 소메뉴 s0101, s0102, s0201, s0202 같은 class도 각각 들어가줘야 해서 막혔습니다.

 

어떻게 해보는 것이 좋은지 코드를 도와주셨으면 합니다.

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

답변 1개

플라이
2년 전

소스 코드를 봤을때는 구조상 문제는 없어보이는데 어떻게 에러가 나서 실패를 하시는건지 확인이 필요할듯 합니다.

로그인 후 평가할 수 있습니다

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

답변을 작성하려면 로그인이 필요합니다.

로그인