Q&A

사이트 운영모듈의 레벨 기준을 포인트에서 경험치로 바꾸고 싶습니다

2019.12.12 15:10
2,544
0
CMS/프레임워크 XE 1.x
개발 언어 PHP 7.2

날아라님의 사이트운영관리 모듈 사용중입니다

https://xetown.com/index.php?mid=point_contents&search_keyword=%EC%9A%B4%EC%98%81&search_target=title&document_srl=23227

 

여기 기능 중 하나가 게시글 열람제한이 있는데 레벨로 제한을 걸 수 있습니다

 

예를들면 레벨2로 설정해놓으면 레벨1은 조회할 수 없는데

이 모듈을 보면 포인트를 기준으로 레벨을 보여주고 있더라구요

 

이미 저희 사이트는 경험치를 기준으로 레벨을 산정하고 있는데...

 

모듈을 보니 controller.php 쪽에 회원레벨 기준을 정하는 곳이 보이는거 같은데 

어떻게 수정해야할지 모르겠습니다 ㅠ

 

//회원레벨 구함 (설정값 존재시)
if($module_part_config['limit_access_module']['level'] || $module_part_config['limit_access_document']['level']){
if($logged_info){
$oPointModel = &getModel('point');
$point_config = $oModuleModel->getModuleConfig('point');
$member_point = $oPointModel->getPoint($logged_info->member_srl);
$member_level = $oPointModel->getLevel($member_point, $point_config->level_step);
}
}

 

현재 포인트를 기준으로 레벨을 보고 있는데 이걸 경험치 기준으로 레벨을 산정하는 방법으로 가고 싶습니다

다른것들과 비교해보니 point를 exp로도 바꾸고 experience로도 바꾸는데 아무리 여러가지 바꿔봐도 

제대로 되지 않네요...

 

어떻게 수정해줘야 경험치레벨로 작동이 할까요?

 

댓글 2

  • 2019.12.12 15:18 #1303492
    실제 작동시켜본건 아니니 참고만... ^^

    $oPointModel = &getModel('point');
    $point_config = $oModuleModel->getModuleConfig('point');
    $member_point = $oPointModel->getPoint($logged_info->member_srl);
    $member_level = $oPointModel->getLevel($member_point, $point_config->level_step);

    대신에

    $oExperienceModel = getModel('experience');
    $experience_config = $oModuleModel->getModuleConfig('experience');
    $member_experience = $oExperienceModel->getExperience($logged_info->member_srl);
    $member_level = $oExperienceModel->getLevel($member_experience, $experience_config->level_step);
  • 2019.12.12 15:39 #1303513
    오 exp가 아니라 experience로 모두 바꾸는거였군요
    잘되는거 같습니다 정말 감사합니다!