comment
만들다보면 내가 뭘 만들었는지 모를 때가 있습니다. 왜 이렇게 했는지 몰라서 적어둡니다. ㅠ_ㅠ
file
\widgets\content\skins\eond_on\_tab_top.html
변경전 code
<div class="article_box"> <div class="cat_box"> <ul> {@$i=0} <!--@foreach($widget_info->tab as $module_srl => $tab)--> {@ $strrr = str_replace('http://eond.com/','',$tab->url); } <li<!--@if($i==0)--> class="on"><!--@else-->><!--@end--><span class="#wdg_{$strrr}" title="{$tab->title}">{$tab->title}</span><span class="mark"></span></li> {@$i++} <!--@end--> </ul> </div> <div class="article_thumb"> {@$i=0} <!--@foreach($widget_info->tab as $module_srl => $tab)--> {@ $strrr = str_replace('http://eond.com/','',$tab->url); } <div class="tab-pane" id="wdg_{$strrr}">{@$widget_info->content_items = $tab->content_items}<!--#include("_tab_none.html")--></div> {@$i++} <!--@end--> </div> </div>
str_replace 함수를 사용했었네요. -_-a
변경 후 code
<div class="article_box"> <div class="cat_box"> <ul> {@$i=0} <!--@foreach($widget_info->tab as $module_srl => $tab)--> {@ $strrr = str_replace($tab->domain.'/','',$tab->url); } {@ debugPrint($tab); } <li<!--@if($i==0)--> class="on"><!--@else-->><!--@end--><span class="#wdg_{$strrr}" title="{$tab->title}">{$tab->mid}{$tab->title}</span><span class="mark"></span></li> {@$i++} <!--@end--> </ul> </div> <div class="article_thumb"> {@$i=0} <!--@foreach($widget_info->tab as $module_srl => $tab)--> {@ $strrr = str_replace($tab->domain.'/','',$tab->url); } <div class="tab-pane" id="wdg_{$strrr}">{@$widget_info->content_items = $tab->content_items}<!--#include("_tab_none.html")--></div> {@$i++} <!--@end--> </div> </div>
cat_box는 제목에 해당하는 레이어이며, article_thumb는 내용에 해당하는 레이어입니다.
탭 게시물인데, 중요한 점은 클릭하는 탭의 제목의 레이어 클래스명과 내용의 아이디명이 서로 동일해야 하는 점인데요,
(어떻게 구현했었는지는 잘 모르겠습니다만-_-; 소스를 더 봐야겠지요;)
기존 코드를 보시면 무식하게 도메인명을 박아넣었었는데요,
{@ $strrr = str_replace('http://eond.com/','',$tab->url); }
이번에 debugPrint()의 사용방법을 익히면서
debugPrint($tab) 을 해보니 domain 이란 배열이 있더군요.
그리고 마지막에 /도 없애줘야 했기 때문에
{@ $strrr = str_replace($tab->domain.'/','',$tab->url); }
'http://eond.com/' 이란 도메인을 '' 빈값으로 바꿔주었습니다. 맨 뒤에 $tab->url 은 각 클래스를 구분하는 주소입니다.
str_replace('A','B','C')
C에서 A를 찾아서 B로 바꾼다는 뜻입니다.