Distribution Skins

테마, 스킨, 위젯 등 아미나 배포자료실

기간제 멤버쉽 및 포인트 구매 플러그인

※ 본 플러그인은 아미나빌더 1.1.9 버전 3차 패치 이상부터 사용할 수 있으며, 영카트 버전만 이용할 수 있습니다.

 

기존 프리미엄 자료실에서 배포하던 것과 동일하며, 프리미엄 자료실 운영을 하지 않는 것도 있고, 이미 아미나빌더 기본 회원관리에 이 플러그인 관련 부분이 포함되어 있어서 일반 배포합니다.

 

아미나빌더는 관리비용 절감차원에서 상당 부분을 자동화할 수 있는 부분을 탑재하고 있는데, 본 플러그인도 그 중 하나입니다. 상품과 연계하여 회원등급을 자동으로 관리하고, 경험치에 반영되지 않는 순수 포인트만을 적립하도록 하는 플러그인입니다.

 

1. 설치방법

 

압축을 푼 후 나오는 apms.membership.php 파일을 /extend 폴더에 넣어 주시면 됩니다.

 

2. 적용방법

 

먼저 멤버쉽 상품의 조건 파일인 /extend/apms.membership.php 파일을 열어서 수정해 주셔야 합니다.

 

수정은 apms.membership.php 파일을 열어서 16 라인에 상품과 조건을 등록하시면 됩니다.

 

 switch($it_id) {
  case 'premium'  : $membership = array("type"=>"membership", "grade"=>"3", "term"=>"30"); break; //멤버쉽 상품 - 30일간 회원등급 3
  case 'point'  : $membership = array("type"=>"point"); break; // 포인트 구매 상품
  default    : $membership = array(); break;
 }

 

타입(type)은 포인트 구매(point)와 기간제 멤버쉽(membership) 2개를 적용하도록 해 두었습니다.

 

그리고 여기에 등록된 조건에 맞추어 apms_membership_order(), apms_membership_item(), apms_membership_update() 함수의 내용이 변경되기 때문에 간단히 사용하실 분은 그냥 그대로 사용하셔도 됩니다.

 

기존 아미나의 경우 상품코드를 premium 과 point 로 각각 등록하고, 이 두 상품을 위의 조건으로 연동해 두었습니다.

 

즉, 상품코드가 premium인 상품은 멤버쉽(membership) 상품으로 결제시 회원등급이 3등급으로 자동 업데이트 되며, 수량 1개당 30일의 기간을 부여하도록 되어 있고, 상품코드가 point인 상품은 포인트 구매용 상품(point)으로 사용한다는 것입니다.

 

3. 수동관리

 

기간제 회원의 잔여기간은 회원정보의 as_date 라는 필드에 기록됩니다. 그리고 기간제 회원의 경우 관리자에서 회원정보 수정에 들어 가시면 아래 이미지처럼 회원등급 아래에 이용기간이 표시되며, 수동으로 기간을 늘이거나 줄일 수 있도록 되어 있습니다. 참고로 기간제 회원이 아닌 경우에는 표시되지 않습니다.

 

 

 

 

4. 기간표시

 

로그인창이나 회원정보 등에 기간제 회원의 기간을 표시하고자 할 때 아래코드를 넣어 주시면 됩니다.

 

<?php if($member['as_date']) { ?>
 <?php echo date("Y.m.d H:i", $member['as_date']);?>까지
 (<?php echo number_format(($member['as_date'] - G5_SERVER_TIME) / 86400);?>일)
<?php } ?>

 

5. 기타사항

 

기존 상품등록폼과 상품설명 페이지만을 이용하여 포인트를 구매할 경우 구매시 적립되는 포인트를 이용했기 때문에 해당 포인트가 전부 경험치로 반영된다는 점과 구매에 따른 추가 포인트 적립이 안된다는 문제가 있습니다.

 

반면 본 플러그인의 포인트 구매는 경험치와 상관없는 별도 포인트 적립이 된다는 점과 구매시 추가 포인트 적립을 할 수 있어 보통 이야기하는 포인트 충전과 동일하다고 보시면 됩니다. 그리고 적립되는 포인트는 부가세를 제외한 포인트 만큼만 적립되도록 apms_membership_order() 함수에 프로그래밍 되어 있습니다.

 

참고로 잔여기간이 남은 기간제 멤버쉽 상품을 다시 구매하려고 할 경우, apms_membership_item 함수에서 잔여기간 표시와 기간소진 이후 재구매가 가능하다는 메시지가 출력되도록 프로그래밍 되어 있습니다.

 

본 자료는 응용을 하려면 끝이 없기 때문에 많은 질문이 생길 수 밖에 없습니다. 개인용도 보다는 제작의뢰를 받을 경우 활용하시라고 만든 플러그인이고, 실제 로직을 변경하고 짜야하는 부분이라 질문을 하셔도 답변 드리기는 어렵습니다.

 

,

Facebook Twitter GooglePlus KakaoStory NaverBand

My Shop Author

Lv.28 M 한별아빠  관리자
133,248 (10.4%)

세상을 바꾸는 작은 힘 - 아미나

70 Comments
1 강한남자임  
감사합니다~!^^
3 매드캣  
감사합니다!
3 매드캣  
등급 두 개에 관해 기간제 신청을 받으려고 하면
case 'premium' : $membership = array("type"=>"membership", "grade"=>"3", "term"=>"30"); break; //멤버쉽 상품 - 30일간 회원등급 3
이 부분을 한 줄 더 만들어주면 되는 걸까요?
M 한별아빠  
1. 어... 등급 2개 지정은 안되요. 지정한 등급의 기간체크를 위한 필드가 1개 뿐이라...ㅠㅠ

2. 이야기하는 것은 같은 등급인데, 기간이 다른 상품이 여러개(1개월, 3개월, 6개월 등) 일 때는 case 를 추가해 주면 됩니다.
3 매드캣  
흑... 그렇군요 ㅠㅠ
그냥 등급 한 개만 운영해야겠네요! ㅎㅎ 답변해 주셔서 감사합니다!
그리고 좋은 자료 정말 감사드려요!
2 paul  
switch($it_id) {
  case 'premium'  : $membership = array("type"=>"membership", "grade"=>"3", "term"=>"30"); break; //멤버쉽 상품 - 30일간 회원등급 3
  case 'point'  : $membership = array("type"=>"point"); break; // 포인트 구매 상품
  default    : $membership = array(); break;
 }

 16라인에 삽입하라는 이야기가 아니고 상품코드와 조건을 수정 할수있다는 이야기군요...
수정안하고 그냥쓰려면 새로등록하는  상품코드만 자동으로 생성된 숫자지우고  point (포인트 판매시) / membership (기간제 멤버쉽판매시)로 바꿔서 등록하라는 말씀 이군요
M 한별아빠  
네. 상품등록시 상품코드를 point 로 했다면 따로 수정할 필요는 없습니다.
3 군자불기  
"잔여기간이 남은 기간제 멤버쉽 상품을 다시 구매하려고 할 경우, apms_membership_item 함수에서 잔여기간 표시와 기간소진 이후 재구매가 가능하다는 메시지가 출력되도록 프로그래밍 되어 있습니다." 라고 되어있는데요.
잔여기간이 남아 있어도 추가 구매 가능하게 할수있을까요? 추가구매하면 남은기간 + 구매기간으로 업데이트 되도록 말입니다~
M 한별아빠  
아래 자료 참고해 보세요.

http://amina.co.kr/bbs/board.php?bo_table=skin_member&wr_id=6684

Congratulation! You win the 5 Lucky Point!

4 로도당첨  
좋은 상품이네요

Congratulation! You win the 23 Lucky Point!

  1. 영리/비영리 사이트 모두 사용가능하며, 제작의뢰 또는 납품용으로도 사용할 수 있습니다.
  2. 수정 후 몰에서 판매하는 자료의 리소스로 활용 또는 단독판매가 가능하고, 회원자료실에서 재배포도 가능합니다.
  3. 포인트가 있는 경우 다운로드 후 2개월(60일) 동안은 다시 받더라도 재차감되지 않습니다.
제목
최근 글
최근 댓글
Facebook Twitter GooglePlus KakaoStory NaverBand