팁/튜토리얼

레이아웃 및 로그인 위젯에서 포인트 및 레벨 표시하기

2015.11.06 05:31
938
5

기본적으로 포인트와 레벨을 표시하는 코드는 이렇습니다.

 

{@
$oPointModel = &getModel('point');
$point = $oPointModel->getPoint($logged_info->member_srl);
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
$level = $oPointModel->getLevel($point, $config->level_step);
}

위 코드를 먼저 작성하면 포인트모듈에서 멤버별로 포인트와 레벨을 출력할 수 있습니다.

 

포인트는 

{$point}

레벨은 

{$level}

이렇게 작성하면 되죠..

 

여기서 좀더.. 

상위 레벨로 가기 위해 필요한 포인트를 비율로 표시해주고 싶을 경우..

 

{@
$oPointModel = &getModel('point');
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
$point = $oPointModel->getPoint($logged_info->member_srl);
$level = $oPointModel->getLevel($point, $config->level_step);
$nextpoint = $config->level_step[$level+1];
$prepoint = $config->level_step[$level];
$percent = round(($point-$prepoint)/($nextpoint-$prepoint)*100, 2);
}

이렇게 적으면 이전 포인트와 다음 포인트 그리고 퍼센트 비율을 출력해줄 수 있습니다.

 

그리고 레벨 아이콘을 따로 표시해주고 싶을 경우는

{@
$oPointModel = &getModel('point');
$point = $oPointModel->getPoint($memberInfo['member_srl']);
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
$level = $oPointModel->getLevel($point, $config->level_step);
}

이렇게 작성하시고 

<img src="{sprintf('%smodules/point/icons/%s/%d.gif', Context::getRequestUri(), $config->level_icon, $level)}" />

이렇게 작성하면 해당 멤버의 레벨 아이콘을 출력해줄 수 있습니다..

 

참조 : https://xe1.xpressengine.com/qna/23095377

 

eond Lv. 13
# 라이믹스 스킨 제작은 어디? >>>> XE 레이아웃, 라이믹스 스킨제작은 이온디에서 커스터마이징해드립니다.
# 빠른 라이믹스 커뮤니티용 호스팅을 찾고 계신가요? >>>> 이온디호스팅 서비스는 PHP8 & Redis 서버 캐시를 활용하여 라이믹스에 최적화된 호스팅 서비스를 제공해드립니다. (서버세팅시 웹패널, 내도메인메일서비스도 함께 구축해드립니다.)
https://eond.com

댓글 6