묻고답하기
xe코드 적용문제
2014.02.01 22:51
안녕하세요 xe 초보 입문자에요
제가 사이트를 제작하면서 메뉴를 사이트구조에 맞게 적용을 했습니다.
메인페이지에서는 잘돌아가는데 같은 코드를 서브페이지에 붙여넣기를 한 후 적용을 해 보면 아무런 글이 보이지 않습니다.
코드는 아래와 같습니다.
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="/xe/">DLike</a> </div> <div class="navbar-collapse collapse"> <ul class="nav navbar-nav"> <li loop="$GNB->list=>$key1,$val1" class="active"|cond="$val1['selected']" class="dropdown"|cond="$val1['list']"> <a href="{$val1['href']}" class="dropdown-toggle"|cond="$val1['list']" data-toggle="dropdown"|cond="$val1['list']" >{$val1['link']}<b class="caret"|cond="$val1['list']"></b></a> <ul class="dropdown-menu" cond="$val1['list']"> <li loop="$val1['list']=>$key2,$val2" class="dropdown-submenu"|cond="$val2['list']"><a href="{$val2['href']}" target="_blank" |cond="$val2['open_window']=='Y'">{$val2['link']}</a></li> </ul> </li> </ul> <ul class="nav navbar-nav navbar-right"> <li><a href="#">JOIN</a></li> <li><a href="#loginWindow" onclick="jQuery('#loginWindow').css('display','block');" accesskey="L">LOG IN</a></li> </ul> </div><!--/.nav-collapse --> </div> </div>
그리고 사이트에서 소스 보기를 해서 내용을 보면
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="/xe/">DLike</a> </div> <div class="navbar-collapse collapse"> <ul class="nav navbar-nav"> 여기 li로 메뉴가 출력되어야 하는데 ㅠㅠ 빈 공간만 존재합니다. </ul> <ul class="nav navbar-nav navbar-right"> <li><a href="#">JOIN</a></li> <li><a href="#loginWindow" onclick="jQuery('#loginWindow').css('display','block');" accesskey="L">LOG IN</a></li> </ul> </div><!--/.nav-collapse --> </div> </div>
이처럼 서브페이지 메뉴 <li>부분이 출력이 되지 않는데요 물론 메인페이지에서는 <li>부분이 적용이 됩니다.
같은 코드인데도 불고하고 메인페이지에서는 적용이 되는데 서브페이지에서는 왜 작동이 되지 않는지 이해가 안되서 질문들 드립니다.
허접한 질문이지만 아시는 분계시면 답변 부탁드립니다.
댓글 7
-
ForHanbi
2014.02.01 22:56
-
너무잠이와요
2014.02.01 22:58
고맙습니다. 다시한번 천천히 살펴봐야겠네요. 고맙습니다.
새해 복많이 받으세요
-
너무잠이와요
2014.02.02 00:44
죄송한데 다시 질문 좀 드릴게요
서브쪽에 설정해둔 레이아웃의 메뉴가 메인에 설정해둔 메뉴와 다르거나
->제가 알기로는 한 사이트내에 메뉴마다 다른 레이아웃을 지정 할 수 있다고 나오는데 그게 아닌가요?
서브페이지가 메뉴안에 속해 있지 않기 때문입니다.
->아래와 같이 메뉴 트리가 구성되어 져 있어 서브페이지의 메뉴가 전부 메뉴안에 들어가 있습니다.
내사이트
홈메뉴메인01
서브01
서브02
서브03
서브04메인02
서브01
서브02
서브03
메인03
서브01
서브02
서브03
서브04
메인04
서브01
서브02
서브03
서브04
제가 설명드린 부분중 틀린 잘못된 부분이 있다면 지적 부탁드립니다.
-
너무잠이와요
2014.02.02 00:46
또 신기한 부분이 서브페이지 레이아웃이 아닌 기본으로 내장되어 있는 user_layout를 적용하면 메뉴가 출력됩니다.
그런데 sub페이지 레이아웃을 적용하면 메뉴가 적용되지 않네요..
-
ForHanbi
2014.02.02 00:54
만약 메인과 서브쪽 레이아웃 설정이 다르다면
서브쪽에 가셔서 레이아웃 편집을 초기화 해 보세요.
달리 이런거 아니면 안걸릴 이유가 없을거 같은데...
-
너무잠이와요
2014.02.02 01:00
네 기본 레이이웃으로 변경하면 메뉴가 정상적으로 나와 집니다. 그런데 그 기본 레이아웃에 제가 만든
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/xe/">DLike</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li loop="$GNB->list=>$key1,$val1" class="active"|cond="$val1['selected']" class="dropdown"|cond="$val1['list']">
<a href="{$val1['href']}" class="dropdown-toggle"|cond="$val1['list']" data-toggle="dropdown"|cond="$val1['list']" >{$val1['link']}<b class="caret"|cond="$val1['list']"></b></a>
<ul class="dropdown-menu" cond="$val1['list']">
<li loop="$val1['list']=>$key2,$val2" class="dropdown-submenu"|cond="$val2['list']"><a href="{$val2['href']}" target="_blank" |cond="$val2['open_window']=='Y'">{$val2['link']}</a></li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">JOIN</a></li>
<li><a href="#loginWindow" onclick="jQuery('#loginWindow').css('display','block');" accesskey="L">LOG IN</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
코드를 넣으면 위에서 말씀드렸듯이 li가 출력이되지 않습니다. 메인페이지에서는 정상적으로 작동이되는데.. 우독 서브 페이지에서 위의 코드가 실행이 안되니 답답해서 ㅠㅠ
신경써주셔서 고맙습니다. 접한지얼마되지 않아 잘모르는게 많네요.
-
너무잠이와요
2014.02.02 01:03
신경써주셔서 고맙습니다. 제가 코드를 잘못적었네요
$GNB->list 가 아니라 $global_menu였습니다. 서브쪽에는 global_menu로 해줘야 하는군요 ㅠㅠ
감사합니다.
원인은 두가지 중에 하나입니다.
서브쪽에 설정해둔 레이아웃의 메뉴가 메인에 설정해둔 메뉴와 다르거나
서브페이지가 메뉴안에 속해 있지 않기 때문입니다.
그 외에 변수는 없을거 같네요.