다국어 사이트에서의 결제 수단 표시
WPML 플러그인을 이용해서 구축한 다국어 웹사이트에서 쇼핑몰을 운영할 때 원화 결제를 위한 수단(카드결제, 은행이체, 가상계좌, 카카오 페이 등)과 달러화(또는 기타 해외 통화)를 위한 페이팔 결제 등을 제공하는 경우가 많습니다.
이 경우, 이 결제 수단들은 선택한 언어에 상관없이 결제 화면에 모두 나타납니다.
한국어 사이트에서 결제 할 때는 원화를 결제 할 수 있는 수단만 나타나고, 영어 나 일본어 사이트에서는 페이팔 결제만 나타나게 할 수 있는 방법을 소개합니다.
플러그인 사용
WPML 에서 제공하는 WooCommerce Gateways Country Limiter 플러그인을 사용 합니다.
이 플러그인을 활성화 하면 “우커머스-설정-결제” 탭에서 사용가능한 각 결제 수단(카드결제,페이팔,가상결제 등등)을 선택하게 되면 해당 화면의 아랫쪽에 어떤 국가 사용자에게 이 결제 수단을 보여 줄지 결정하는 옵션이 나타납니다.
functions.php 파일에 코드 사용
위에서 사용하는 플러그인으로 해결 되지 않는 경우가 있습니다.
현재(2017.06.02) 코드엠의 플러그인을 이용해서 결제를 연결한 경우, 위와 같이 플러그인으로 변경하는 것이 적용 되지 않습니다.
이 때는 아래와 같은 코드를 내 차일드 테마의 functions.php 파일 하단에 붙여 넣어 가능하게 합니다.
//한국어 사이트에서 결제시 '페이팔' 결제 감추기 add_filter( 'woocommerce_available_payment_gateways', 'hide_paypal' ); function hide_paypal( $gateways ) { if( ICL_LANGUAGE_CODE == 'ko' ) unset( $gateways['paypal'] ); //페이팔 return $gateways; }
//영어 사이트에서 결제시 한국 원화 결제 수단 감추기 add_filter( 'woocommerce_available_payment_gateways', 'hide_inicis_stdcard' ); function hide_inicis_stdcard( $gateways ) { if( ICL_LANGUAGE_CODE == 'en' ) unset( $gateways['inicis_stdcard'] ); //코드엠 이니시스 카드결제 unset( $gateways['inicis_stdvbank'] ); //코드엠 이니시스 가상 계좌이체 unset( $gateways['inicis_stdbank'] ); //코드엠 이니시스 실시간 계좌이체 unset( $gateways['inicis_stdescrow_bank'] ); //코드엠 이니시스 에스크로 계좌이체 unset( $gateways['iamport_card'] ); //아이엠포트 카드결제 unset( $gateways['iamport_vbank'] ); //아이엠포트 가상 계좌이체 unset( $gateways['iamport_trans'] ); //아이엠포트 실시간 계좌이체 unset( $gateways['iamport_kakao'] ); //아이엠포트 카카오페이 unset( $gateways['bacs'] ); //직접 은행 이체 return $gateways; }
* 위의 코드는 원화 결제시 코드엠의 이니시스 플러그인과 아이엠포트 플러그인을 사용하는 경우입니다.