질문/조언질답게시판
Extra Form
PHP PHP 7.0
CMS Rhymix
메뉴1 메뉴6 메뉴11 메뉴16
메뉴2 메뉴7 메뉴12 메뉴17
메뉴3 메뉴8 메뉴13 메뉴18
메뉴4 메뉴9 메뉴14  
메뉴5 메뉴10 메뉴15  

 

라이믹스 메뉴 출력 부분을 위에 형식대로 

5개의 li당 ul로 감싸주려고 하는데요.

메뉴 출력 반복문 안에 나머지 연산자를 통해

{@ $menu_count++; }
   <[email protected]($menu_count % 5 == 0)-->
   <ul>
      <li>{$menu_count}</li>
   </ul>
   <[email protected]>

5개당 한 번씩 ul이 생성은 되는데

안쪽 li도 5번째와 10번째 15번째만 생성이 되어서

li쪽에 한 번 더 메뉴 출력 반복문을 써줘야 하는 걸까요?

고수님들이 보시기에는 너무 쉬운 문제이실 거 같은데

그냥 소스 붙여넣기 해서 쓰는 사람이라 새로운 걸 해보려니 정말 막막하네요.

염치없지만 XE타운에 고수님들에게 도움을 요청합니다. ㅠ

 

  • profile
    소스의 일부만 보여주면 코드 짜기 어렵습니다.
    해당 메뉴를 담당하는 코드가 저코드가 다인가요? 그 위로 2~3줄 아래로 2~3줄 더 잇을 것 같은데...
  • profile profile

    아 메뉴 출력하는 foreach문 있습니다. 죄송합니다.
    다시 수정해서 올리겠습니다!

     

    <[email protected]($header_menu->list as $key1 => $val1)-->
    {@ $menu_count++; }
    <[email protected]($menu_count % 5 == 0)-->
    <ul>
    <li class="selected"|cond="$val1['selected']">
        <a href="{$val1['href']}" target="_blank"|cond="$val1['open_window']=='Y'">
            {$val1['link']}
            <div class="desc">{$val1['desc']}</div>
        </a>
    </li>
    </ul>
    <[email protected]>
    <[email protected]>

    앗 댓글 달려서 수정이 안되네요.

    이게 메뉴출력 부분 소스입니다.

    본문에 소스는 테스트 했던 소스였습니다!

  • profile

    1차 메뉴 -> 5개 2차메뉴 씩해서 여러개로 메뉴를 만들고

    1차메뉴는 이름도 공백이나 안보이게 짜면될듯한데요.

    굳이 하나의 메뉴로 쭉이어진걸 고집하지마시고,

    그렇게 해서 1차메뉴를 한번 쫙 뿌리고 (이는 빈값으로 반복만해서 ul만 생성, 그 다음 2차에 해당되는 메뉴를 출력시키면됩니다.

    ul
    li <- 1차메뉴(여기에 빈값)
    ul<-2차메뉴의 틀
    li 1차메뉴의 2차메뉴 (5개씩 나눠서 배분)


    1차메뉴
    - 2차메뉴
    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    1차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    1차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

    - 2차메뉴

     

    이런식으로 메뉴 생성하면됩니다.

  • profile profile
    아! 람보님이 말씀해주신 내용대로하면 동일한 결과값이 나오겠네요.
    더불어 이건 그냥 단지 호기심? 오기? 인데 1차메뉴로만 저렇게 분기 해주려면
    어떤 키워드가 필요할까요? 어제부터 하고있는데 너무 분하네요 저것도 못해서 ㅋㅋ
  • profile
    다수의 아이템이 들어 있는 배열을 n개씩 끊는 데는 array_chunk 함수가 직빵입니다.
    % 5 == 0 으로 처리하는 것보다 훨씬 깔끔한 2차원 배열이 나와요.
  • profile profile
    헉 꿀팁!! 감사합니다. array_chunk !! 검색해서 활용해보겠습니다!
  • profile profile

    기진님 너무 감사드립니다.

    어제 하루종일 고민하던거 말씀해주신 함수로 뚝딱 해버렸습니다..

     

    <div>
    {@ $test = array_chunk($menu_items->list, 5, true) }
       <[email protected]($test as $no => $data)-->
          <ul>
             <[email protected]($data as $val1)-->
             <li>{$val1['link']}</li>
             <[email protected]>
          </ul>
       <[email protected]>
    </div>
    

    이게 맞는 방법인진 모르겠는데

    출력값이 저가 원하던거랑 동일하게 나오게 되었습니다.