영카트 주문후 입금상태가 될때 특정 처리를 하고싶습니다.
근데 이게 입금상태로 변경되는 부분이 많다보니, 모두 찾아서 수정하기가 쉽지않네요.
관리자에서 입금처리하거나, 카드로 결제했을때, 가상계좌 입금처리될때등..
원본 코드 막 수정하는것도 찝찝하구요.
cart테이블에서 ct_status가 입금으로 바뀔때만 딱 잡아서 처리할 방법이 없을까요?
답변 1개
채택된 답변
+20 포인트
2022-02-27 (일) 19:30:32
sql_query 함수에서 sql문 실행후에 이벤트 추가할수 있습니다.
Copy
add_event('sql_query_after','order_change_catch',1,2);
function order_change_catch($result, $sql ){
if(strpos($sql,'update g5_shop_cart')===false)return;
// set 부분 파악해서 처리하기
}
set을 정규식으로 잘라서 ct_status가 입금될때를 잡아도 되고,
https://github.com/greenlion/PHP-SQL-Parser sql parser같은걸 써서 처리하셔도 되겠네요.
답변을 작성하려면 로그인이 필요합니다.