이러한 형태로 사이트 타이틀 앞에 (5) 이런식으로 받은 알림 개수로 보여주기 위해서
{@
$oNcenterliteModel = &getModel('ncenterlite');
$ncenterliteoutput = $oNcenterliteModel->getMyNotifyList();
Context::set('total_count', $ncenterliteoutput->page_navigation->total_count);
}
<p id="ncenterliteoutput" style="display: none">{$total_count}</p>
<script>
var ncenterliteoutput = $('#ncenterliteoutput').text()
if (ncenterliteoutput > 0) {
var newtitle = "(" + ncenterliteoutput + ") " + document.title
document.title = newtitle
}
</script>
현재 이런 형태로 레이아웃 단에서 처리하고 있는데 다르게 처리하는게 나을까요?
템플릿에서는 Context::set 하실 필요 없이
$total_count = $ncenterliteoutput->page_navigation->total_count;
이렇게 바로 하시면 되긴 합니다. ( html 파일에서 Context::set 사용 하지마세요)
그런데 $total_count 이라는 변수명을 아주 많이 사용할 수 있는 것이니 중복방지를 위한
$notify_count 이라고 변수명을 변경해주시는것이 좋을 것 같아요.
그 외 나머지는 건드리실 필요는 없어보이네요.
어떻게 하던 모로 가면 되고요.. 알림센터에서 이미 카운트를 잘 해주고 있는 사항이라면 알림센터 위젯을 한번 활용해보시는 것을 추천드립니다.
로그인 위젯 안에 알림센터 기능도 함께 포함되어있으니 로그인 되어있는 영역만 사용하면 다른거에영향없이 로그인시 로그인 위젯을 출력하도록 하면 알아서 갯수를 출력해주는 기능이 위젯으로 해결이 가능합니다. (로그인 폼부분은 HTML파일을 비워두시고 login_info부분만 영역에 맞춰서 HTML코딩하시면 됩니다.)