코어 파일을 건드리지 않고 확장하는 법 > 영카트5 팁자료실

영카트5 팁자료실

코어 파일을 건드리지 않고 확장하는 법 정보

코어 파일을 건드리지 않고 확장하는 법

본문

1. 상품 정보, extra_item 필드로 관리하기
영카트에서 상품을 등록할 때, 제공되는 기본 항목 외에 추가 정보를 넣고 싶을 때가 많죠. 이때 데이터베이스 테이블(g5_shop_item)에 직접 컬럼을 추가하는 건 좋지 않은 방법이에요.

대신 영카트에는 이미 개발자를 위해 준비된 10개의 **추가 상품 필드(it_1 ~ it_10)**가 있습니다.

사용법:
관리자 페이지에서 상품관리 > 상품등록 메뉴로 가면, 아래쪽에 **'추가 항목 1'부터 '추가 항목 10'**까지 입력란이 보일 거예요. 이 필드들은 데이터베이스의 it_1부터 it_10 컬럼에 바로 연결됩니다.

활용 예시:

it_1: 상품 원산지

it_2: 유통기한

it_3: 특정 프로모션 코드

it_4: 맞춤형 상품의 추가 옵션

이렇게 미리 준비된 필드들을 활용하면 데이터베이스 구조를 변경할 필요 없이 원하는 정보를 깔끔하게 추가하고 관리할 수 있습니다.

 

2. 주문/결제 프로세스에 커스텀 기능 추가하기
영카트에서 가장 핵심적인 부분은 결제 후 주문이 완료되는 과정입니다. 이 과정에 여러분만의 기능을 추가하고 싶을 때, 코어 파일을 건드리지 않는 가장 좋은 방법은 훅(Hook)을 사용하는 것입니다.

훅은 특정 이벤트가 발생했을 때(예: 주문이 성공적으로 처리되었을 때) 여러분이 만든 코드를 실행하도록 '걸어두는' 역할을 해요.

활용 예시:

주문이 완료되면, 고객에게 자동으로 카카오 알림톡을 보내는 기능.

특정 상품이 팔리면, 재고 관리 시스템에 데이터를 넘기는 기능.

사용 방법:
그누보드 설치 폴더의 shop/extend 폴더로 가서, shop.extend.php라는 파일을 만드세요. 이 파일은 결제와 관련된 모든 페이지에서 자동으로 로드됩니다.

아래는 주문이 성공적으로 완료되었을 때(order_update_after) 여러분의 커스텀 함수를 실행하는 예시 코드입니다.

 

<?php
if (!defined('_GNUBOARD_')) exit;

// 주문이 완료된 후 실행될 함수를 정의합니다.
function my_custom_order_process($od) {
    // 주문 번호($od['od_id'])와 고객 정보($od['od_name'])를 사용해
    // 알림톡을 보내거나, 외부 API에 데이터를 전송하는 코드를 여기에 작성하세요.
    
    // 예시: 알림톡 보내기 함수 호출
    send_alrimtalk_to_customer($od);
}

// 영카트의 특정 이벤트에 위 함수를 '걸어둡니다'.
add_event('order_update_after', 'my_custom_order_process');
?>

 

이렇게 훅을 활용하면 영카트의 핵심 로직을 건드리지 않으면서, 여러분만의 기능을 안전하게 추가할 수 있습니다.

추천
2
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로