WooCommerce で一部の国の支払いゲートウェイを無効にする方法

公開: 2019-10-24

前回の投稿では、さまざまなユーザー ロールに基づいて WooCommerce で支払いゲートウェイを無効にする方法について説明しました。 お客様の国によっては、これを行う必要がある場合があります。 これは、支払いゲートウェイがその国で広く使用されていない、または顧客に特定の支払いゲートウェイを使用して支払いを行うよう促したいため、その支払いゲートウェイを選択的に有効にしたいなど、さまざまな理由である可能性があります。 いずれにせよ、グローバル規模でサービスを提供する e コマース ストアに関しては、これは便利な機能です。 WooCommerce で一部の国の支払いゲートウェイを無効にする方法については、以下をお読みください。

ほとんどの場合と同様に、コード スニペットまたはプラグインを使用してこれを行うことができます。

コード スニペットを使用して一部の国で支払いゲートウェイを無効にする

まず、インドで PayPal を無効にする場合を考えてみましょう。 子テーマの functions.php ファイルに次のコードを貼り付けます。

 add_filter( 'woocommerce_available_payment_gateways', 'ts_disable_payment_gateway_by_country' );
  
function ts_disable_payment_gateway_by_country( $available_payment_gateways ) {
    if ( is_admin() ) return $available_payment_gateways;
    if ( isset( $available_payment_gateways['paypal'] ) && WC()->customer->get_billing_country() == 'IN' ) {
            unset( $available_payment_gateways['paypal'] );
        }
    $available_payment_gateways を返します。
}

ここでは、フックwoocommerce_available_payment_gatewaysに関数を追加しました。この関数は、条件を記述している国の国コードをチェックし、その国 (この場合はインド) の PayPal を無効にします。

disable payment gateways for some countries in WooCommerce - PayPal disabled for India on the Checkout page

ここでインドに「IN」を使用したように、国ごとに異なるコードがあります。 国コードのリストは、この投稿の最後にあります。

デフォルトで利用可能な支払いゲートウェイのキーワード/スラッグは次のとおりです。

ペイパル:ペイパル
銀行振込: bacs
代金引換:代金引換
小切手:小切手

米国の顧客に対しては PayPal オプションのみを有効にし、インドの顧客に対してはこのオプションを無効にする別の例を考えてみましょう。 この場合、上記のコード スニペットにさらに数行を調整して、米国の顧客の他の支払いゲートウェイを無効にします。

 add_filter( 'woocommerce_available_payment_gateways', 'ts_disable_payment_gateway_by_country' );
  
function ts_disable_payment_gateway_by_country( $available_payment_gateways ) {
    if ( is_admin() ) return $available_payment_gateways;
    if ( isset( $available_payment_gateways['paypal'] ) && WC()->customer->get_billing_country() == 'IN' ) {
            unset( $available_payment_gateways['paypal'] );
        }
  if ( WC()->customer->get_billing_country() == '米国' ) {
    if (isset($available_payment_gateways['bacs'])) { unset($available_payment_gateways['bacs']); } 
    if (isset($available_payment_gateways['cheque'])) { unset($available_payment_gateways['cheque']); } 
    if (isset($available_payment_gateways['cod'])) { unset($available_payment_gateways['cod']); } 
  }
    $available_payment_gateways を返します。
}

このようにして、顧客の国に基づいて支払いゲートウェイを無効にすることができます。

プラグインを使用して一部の国の支払いゲートウェイを無効にする

顧客の国ごとに、支払いゲートウェイを無効にするプラグインも利用できます。 そのようなプラグインの 1 つがCountry Based Paymentsプラグインです。 これは、どの国でどの支払いゲートウェイを利用できるかを決定するために使用できる無料のプラグインです。 プラグインのインターフェイスはわかりやすくわかりやすいものですが、支払いゲートウェイから 1 つの国だけを除外したい場合は、その支払いゲートウェイに対してすべての国を選択し、無効にする国の選択を個別に解除します。その支払いゲートウェイ。

また、 WooCommerce プラグインの条件付き支払い方法を使用すると、国 (顧客の請求先/出荷場所、製品分類、注文合計) に基づいて、支払いゲートウェイ (カスタム ゲートウェイを含む) を表示/非表示にすることができます。 たとえば、米国、カナダ、ヨーロッパの国で PayPal と Stripe を表示します。

このように、コード スニペットとプラグインを使用して、国に基づいて支払いゲートウェイを無効にすることができます。

国コードのリスト:

コード場所/国
A1
匿名プロキシ
A2 サテライトプロバイダー
O1 他の国
広告アンドラ
AE
アラブ首長国連邦
AF アフガニスタン
AG
アンティグア・バーブーダ
AI アンギラ
アルアルバニア
午前アルメニア
あおアンゴラ
AP
アジア太平洋地域
AQ 南極大陸
AR アルゼンチン
なので
アメリカ領サモア
オーストリア
AU オーストラリア
AW アルバ
オーランド諸島
AZ アゼルバイジャン
学士
ボスニア・ヘルツェゴビナ
BB バルバドス
BD バングラデシュ
なれベルギー
BF ブルキナファソ
BG ブルガリア
BH バーレーン
BI ブルンジ
BJ ベナン
BL
サン・バルセルメイ
BM バミューダ
BN
ブルネイ ダルサラーム
ボーボリビア
BQ
ボネール、聖ユースタティウス、サバ
ブラジルブラジル
BS バハマ
BT ブータン
BV ブーベ島
帯域幅ボツワナ
ベラルーシ
BZ ベリーズ
カリフォルニア州カナダ
CC
ココス (キーリング) 諸島
CD
コンゴ民主共和国
CF
中央アフリカ共和国
CG コンゴ
CH スイス
CI コートジボワール
CK クック諸島
CL チリ
CM カメルーン
中国中国
CO コロンビア
CR コスタリカ
CU キューバ
履歴書カーボベルデ
CW キュラソー
CX クリスマス島
キプロス
CZ チェコ共和国
DE ドイツ
DJ ジブチ
DK デンマーク
DM ドミニカ
行う
ドミニカ共和国
DZ アルジェリア
EC エクアドル
EE エストニア
例えばエジプト
ええ西サハラ
小胞体エリトリア
ES スペイン
ET エチオピア
EU ヨーロッパ
FI フィンランド
J F フィジー
FK
フォークランド諸島 (マルビナス)
FM
ミクロネシア連邦
FO フェロー諸島
フランスフランス
GA ガボン
GB イギリス
GD グレナダ
GE グルジア
GF フランス領ギアナ
GG ガーンジー
GH ガーナ
GI ジブラルタル
GL グリーンランド
GM ガンビア
おやすみなさいギニア
GP グアドループ
GQ
赤道ギニア
GR ギリシャ
GS
サウスジョージア・サウスサンドウィッチ諸島
GT グアテマラ
グーグアム
GW ギニアビサウ
GY ガイアナ
香港香港
HM
ハード島とマクドナルド諸島
HN ホンジュラス
人事クロアチア
HT ハイチ
ハンガリー
ID インドネシア
IE アイルランド
イリノイ州イスラエル
わたしはマン島
インド
IO
イギリス領インド洋地域
IQ イラク
IR
イラン・イスラム共和国
アイスランド
それイタリア
ジャージー
JM ジャマイカ
ジョーヨルダン
JP 日本
ケニア
KG キルギスタン
KH カンボジア
キリバス
KM コモロ
KN
セントクリストファー・ネイビス
KP
朝鮮民主主義人民共和国
韓国語
大韓民国
キロワットクウェート
ケンタッキーケイマン諸島
KZ カザフスタン
LA
ラオス人民民主共和国
ポンドレバノン
LC セントルシア
リヒテンシュタイン
LK スリランカ
LR リベリア
LS レソト
LT リトアニア
ルクセンブルク
LV ラトビア
LY
リビア アラブ ジャマヒリヤ
MA モロッコ
MC モナコ
MD
モルドバ共和国
自分モンテネグロ
MF セントマーチン
MG マダガスカル
MH マーシャル諸島
MK マケドニア
ML マリ
んんミャンマー
ミネソタ州モンゴル
マカオ
MP
北マリアナ諸島
MQ マルティニーク
モーリタニア
MS モントセラト
MT マルタ
ムーモーリシャス
MV モルディブ
MW マラウイ
MX メキシコ
私のマレーシア
MZ モザンビーク
NA ナミビア
NC ニューカレドニア
NE ニジェール
NF ノーフォーク島
NG ナイジェリア
NI ニカラグア
NL オランダ
いいえノルウェー
NP ネパール
NR ナウル
ニューニウエ
ニュージーランドニュージーランド
OM オマーン
パナマ
PE ペルー
PF
フランス領ポリネシア
PG
パプアニューギニア
PH フィリピン
PK パキスタン
PL ポーランド
午後
サンピエール島とミクロン島
PN ピトケアン
広報プエルトリコ
PS
パレスチナ自治区
PT ポルトガル
PW パラオ
西暦パラグアイ
QA カタール
RE 再会
RO ルーマニア
RS セルビア
ロシア連邦
RW ルワンダ
SA サウジアラビア
SB ソロモン諸島
SC セーシェル
SD スーダン
SE スウェーデン
SG シンガポール
SH セントヘレナ
SI スロベニア
SJ
スヴァールバル諸島とヤンマイエン
SK スロバキア
SL シエラレオネ
SM サンマリノ
SN セネガル
それでソマリア
SR スリナム
SS 南スーダン
ST
サントメ・プリンシペ
SV エルサルバドル
SX シント・マールテン
SY
シリア・アラブ共和国
SZ スワジランド
TC
タークス・カイコス諸島
TD チャド
TF
フランス領南方領土
TG トーゴ
TH タイ
TJ タジキスタン
TK トケラウ
TL 東ティモール
TM トルクメニスタン
TN チュニジア
トンガ
TR 七面鳥
TT
トリニダード・トバゴ
テレビツバル
TW 台湾
TZ
タンザニア連合共和国
UA ウクライナ
UG ウガンダ
うーん
合衆国領有小離島
私たちアメリカ
UY ウルグアイ
ウズウズベキスタン
VA
聖座 (バチカン市国)
VC
セントビンセントおよびグレナディーン諸島
VE ベネズエラ
VG
バージン諸島、イギリス
バージン諸島、米国
VN ベトナム
VU バヌアツ
WF
ウォリス・フツナ
WS サモア
イェイエメン
YouTube マヨット
南アフリカ
ZM ザンビア
ZW ジンバブエ