제가 공개한 슬라이더들 문제예요.
같은 id를 사용하는 jQuery 슬라이더 위젯을 한 위젯페이지에서 여러개 사용하게 하기 위해
팁을 공유해 드린 적이 있는데요, (XE 컨퍼런스, XE 공개강좌 등...)
위젯 content.html 파일 상단에
<!--@if(!$global['csi'])-->{@ $__Context->global['csi'] = 1}<!--@endif-->{@ $__Context->global['csi']++}
이렇게 글로벌 변수를 선언해서 csi라는 변수가 이 위젯 전에 있었으면 +1 을 해줍니다.
그리고, id값으로 반영합니다.
<div id="bxslider{$global['csi']}" class="bxslider">
...
</div>
<script>
jQuery(function($){
$('#bxslider{$global["csi"]}').bxSlider();
});
이렇게 하면 한 위젯페이지에서 몇 개의 슬라이더라도 사용할 수가 있죠.
근데 같은 class명으로 하지 않는 이유가 서로 다르게 줘야 하는 기능 등이 있기 때문이죠.
어쨌든, 여기까지는 팁인데요,
중요한 건 한 위젯페이지에서 위 슬라이더들을 여러개 사용하고
각 슬라이더 위젯에 캐싱 시간을 주면
저 csi++가 작동을 안하고
모든 슬라이더가 같은 id값을 가지게 됩니다.
#bxslider1, #bxslider1, ... ㅠㅠ
이게 XE코어 문제인 듯한데,
혹시 해결할 방법이 없나요?
문제가 캐싱시간을 적용했을 때 그렇다는 건가요?