Jak wyłączyć bramki płatności w niektórych krajach w WooCommerce?
Opublikowany: 2019-10-24W moim ostatnim poście mówiłem o tym, jak możesz wyłączyć bramki płatności w WooCommerce w oparciu o różne role użytkowników. Czasami zdarzają się sytuacje, w których może być to konieczne w zależności od kraju klienta. Może to wynikać z różnych powodów, takich jak bramka płatności, która nie jest powszechnie używana w tym kraju lub chcesz zachęcić klientów do korzystania z określonej bramy płatności do dokonywania płatności, a więc chcesz selektywnie włączyć tę bramkę płatności. W każdym razie, jeśli chodzi o sklep e-commerce, który działa na skalę globalną, jest to przydatna funkcja. Czytaj dalej, aby dowiedzieć się, jak wyłączyć bramki płatności w niektórych krajach w WooCommerce.
Podobnie jak w przypadku większości rzeczy, możesz to zrobić za pomocą fragmentów kodu lub wtyczek.
Używanie fragmentu kodu do wyłączania bramek płatności w niektórych krajach
Na początek rozważmy przypadek, w którym chcesz wyłączyć PayPal dla Indii. Wklej następujący kod do pliku functions.php motywu potomnego:
add_filter( 'woocommerce_available_payment_gateways', 'ts_disable_payment_gateway_by_country' );
funkcja ts_disable_payment_gateway_by_country( $available_payment_gateways) {
if ( is_admin() ) zwraca $available_payment_gateways;
if ( isset( $available_payment_gateways['paypal'] ) && WC()->customer->get_billing_country() == 'IN' ) {
unset( $available_payment_gateways['paypal'] );
}
zwróć $available_payment_gateways;
}Tutaj dodaliśmy funkcję do haka woocommerce_available_payment_gateways , która sprawdza kod kraju, dla którego piszemy warunek, i wyłącza PayPal dla tego kraju (w naszym przypadku Indie):

Każdy kraj ma inny kod, tak jak tutaj użyliśmy „IN” dla Indii. Listę kodów krajów znajdziesz na końcu tego posta.
Słowa kluczowe/slugi dla domyślnych dostępnych bramek płatności to:
PayPal: paypal
Bezpośredni przelew bankowy: bacs
Pobranie: dorsz
Czek: czek
Rozważmy inny przypadek, w którym chcemy mieć włączoną tylko opcję PayPal dla klientów w USA, przy czym ta opcja jest wyłączona dla klientów w Indiach. W tym przypadku dostosujemy kilka dodatkowych wierszy do naszego fragmentu kodu powyżej, aby wyłączyć inne bramki płatności dla klientów w USA:
add_filter( 'woocommerce_available_payment_gateways', 'ts_disable_payment_gateway_by_country' );
funkcja ts_disable_payment_gateway_by_country( $available_payment_gateways) {
if ( is_admin() ) zwraca $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() == 'US' ) {
if (isset($available_payment_gateways['bacs'])) { unset($available_payment_gateways['bacs']); }
if (isset($available_payment_gateways['czek'])) { unset($available_payment_gateways['czek"]); }
if (isset($available_payment_gateways['cod'])) { unset($available_payment_gateways['cod']); }
}
zwróć $available_payment_gateways;
}W ten sposób możesz wyłączyć bramki płatności na podstawie kraju klienta.
Korzystanie z wtyczki do wyłączania bramek płatności w niektórych krajach
Dostępne są również wtyczki do wyłączania bramek płatności zgodnie z krajem klienta. Jedną z takich wtyczek jest wtyczka Country Based Payments . Jest to darmowa wtyczka, za pomocą której możesz zdecydować, która bramka płatności powinna być dostępna w danym kraju. Chociaż interfejs wtyczki jest przyjazny i oczywisty, jeśli chcesz wykluczyć tylko jeden kraj z bramki płatności, to sposobem na obejście tego jest wybranie wszystkich krajów względem tej bramki płatności, a następnie indywidualne odznaczenie krajów, które chcesz wyłączyć dla tej bramki płatności.
Ponadto, korzystając z wtyczki Warunkowe metody płatności dla WooCommerce , możesz ukryć/pokazać dowolne bramy płatności (w tym bramy niestandardowe) na podstawie krajów – lokalizacji rozliczeń/wysyłki klienta lub taksonomii produktu lub sumy zamówienia. Na przykład pokaż PayPal i Stripe w USA, Kanadzie i krajach europejskich.
W ten sposób możesz użyć fragmentów kodu, a także wtyczek, aby wyłączyć bramki płatności w zależności od kraju.
Lista kodów krajów:
| Kod | Lokalizacja/Kraj |
| A1 | Anonymous Proxy |
| A2 | Dostawca satelitarny |
| O1 | Inne państwo |
| OGŁOSZENIE | Andora |
| AE | Zjednoczone Emiraty Arabskie |
| AF | Afganistan |
| AG | Antigua i Barbuda |
| AI | Anguilla |
| glin | Albania |
| JESTEM | Armenia |
| AO | Angola |
| AP | Region Azji i Pacyfiku |
| AQ | Antarktyda |
| AR | Argentyna |
| JAK | Samoa Amerykańskie |
| W | Austria |
| AU | Australia |
| AW | Aruba |
| TOPÓR | Wyspy Alandzkie |
| AZ | Azerbejdżan |
| BA | Bośnia i Hercegowina |
| nocleg ze śniadaniem | Barbados |
| BD | Bangladesz |
| BYĆ | Belgia |
| BF | Burkina Faso |
| BG | Bułgaria |
| BH | Bahrajn |
| BI | Burundi |
| BJ | Benin |
| BL | Św Barthelemey |
| BM | Bermudy |
| BN | Brunei Darussalam |
| BO | Boliwia |
| BQ | Bonaire, św. Eustatius i Saba |
| BR | Brazylia |
| BS | Bahamy |
| BT | Bhutan |
| BV | Wyspa Bouveta |
| BW | Botswana |
| ZA POMOCĄ | Białoruś |
| BZ | Belize |
| CA | Kanada |
| CC | Wyspy Kokosowe (Keelinga) |
| płyta CD | Kongo, Demokratyczna Republika |
| CF | Republika Środkowoafrykańska |
| CG | Kongo |
| CH | Szwajcaria |
| CI | Wybrzeże Kości Słoniowej |
| CK | Wyspy Cooka |
| CL | Chile |
| CM | Kamerun |
| CN | Chiny |
| WSPÓŁ | Kolumbia |
| CR | Kostaryka |
| CU | Kuba |
| CV | Wyspy Zielonego Przylądka |
| CW | Curaçao |
| CX | Wyspa Bożego Narodzenia |
| CY | Cypr |
| CZ | Republika Czeska |
| DE | Niemcy |
| DJ | Dżibuti |
| DK | Dania |
| DM | Dominika |
| ROBIĆ | Republika Dominikany |
| DZ | Algieria |
| WE | Ekwador |
| EE | Estonia |
| NP | Egipt |
| EH | Sahara Zachodnia |
| ER | Erytrea |
| ES | Hiszpania |
| ET | Etiopia |
| UE | Europa |
| FI | Finlandia |
| FJ | Fidżi |
| FK | Falklandy (Malwiny) |
| FM | Mikronezja, Sfederowane Stany |
| FO | Wyspy Owcze |
| FR | Francja |
| GA | Gabon |
| GB | Zjednoczone Królestwo |
| GD | Grenada |
| GE | Gruzja |
| GF | Gujana Francuska |
| GG | Guernsey |
| GH | Ghana |
| żołnierz amerykański | Gibraltar |
| GL | Grenlandia |
| GM | Gambia |
| GN | Gwinea |
| GP | Gwadelupa |
| GQ | Gwinea Równikowa |
| GR | Grecja |
| GS | Georgia Południowa i Sandwich Południowy |
| GT | Gwatemala |
| GU | Guam |
| GW | Gwinea Bissau |
| GY | Gujana |
| HK | Hongkong |
| HM | Wyspy Heard i Wyspy McDonalda |
| HN | Honduras |
| HR | Chorwacja |
| HT | Haiti |
| HU | Węgry |
| ID | Indonezja |
| TJ | Irlandia |
| IL | Izrael |
| JESTEM | Wyspa Man |
| W | Indie |
| IO | Brytyjskie Terytorium Oceanu Indyjskiego |
| ILORAZ INTELIGENCJI | Irak |
| IR | Iran (Islamska Republika |
| JEST | Islandia |
| TO | Włochy |
| JE | Golf |
| JM | Jamajka |
| JO | Jordania |
| JP | Japonia |
| KE | Kenia |
| KG | Kirgistan |
| KH | Kambodża |
| KI | Kiribati |
| KM | Komory |
| KN | Saint Kitts i Nevis |
| KP | Korea, Republika Ludowo-Demokratyczna |
| KR | Republika Korei |
| KW | Kuwejt |
| KY | Kajmany |
| KZ | Kazachstan |
| LA | Laotańska Republika Ludowo-Demokratyczna |
| FUNT | Liban |
| LC | święta Lucia |
| LI | Liechtenstein |
| LK | Sri Lanka |
| LR | Liberia |
| LS | Lesoto |
| LT | Litwa |
| LU | Luksemburg |
| LV | Łotwa |
| LY | Libijska Arabska Dżamahirija |
| MAMA | Maroko |
| MC | Monako |
| MD | Mołdawia, Republika |
| JA | Czarnogóra |
| MF | święty Marcin |
| MG | Madagaskar |
| MH | Wyspy Marshalla |
| MK | Macedonia |
| ML | Mali |
| MM | Myanmar |
| MN | Mongolia |
| MO | Makao |
| poseł | Mariany Północne |
| MQ | Martynika |
| PAN | Mauretania |
| SM | Montserrat |
| MT | Malta |
| MU | Mauritius |
| MV | Malediwy |
| MW | Malawi |
| MX | Meksyk |
| MÓJ | Malezja |
| MZ | Mozambik |
| Nie dotyczy | Namibia |
| NC | Nowa Kaledonia |
| NE | Niger |
| NF | Wyspa Norfolk |
| NG | Nigeria |
| NI | Nikaragua |
| Holandia | Holandia |
| NIE | Norwegia |
| NP | Nepal |
| NR | Nauru |
| NU | Niue |
| Nowa Zelandia | Nowa Zelandia |
| OM | Oman |
| ROCZNIE | Panama |
| PE | Peru |
| PF | Polinezja Francuska |
| PG | Papua Nowa Gwinea |
| PH | Filipiny |
| PK | Pakistan |
| PL | Polska |
| PO POŁUDNIU | Saint-Pierre i Miquelon |
| PN | Pitcairn |
| PR | Portoryko |
| PS | terytorium palestyńskie |
| PT | Portugalia |
| PW | Palau |
| PY | Paragwaj |
| Kontrola jakości | Katar |
| ODNOŚNIE | Zjazd |
| RO | Rumunia |
| RS | Serbia |
| RU | Federacja Rosyjska |
| RW | Rwanda |
| SA | Arabia Saudyjska |
| SB | Wyspy Salomona |
| SC | Seszele |
| SD | Sudan |
| SE | Szwecja |
| SG | Singapur |
| CII | Święta Helena |
| SI | Słowenia |
| SJ | Svalbard i Jan Mayen |
| SK | Słowacja |
| SL | Sierra Leone |
| SM | San Marino |
| SN | Senegal |
| WIĘC | Somali |
| SR | Surinam |
| SS | Południowy Sudan |
| ST | Wyspy Świętego Tomasza i Książęca |
| SV | Salwador |
| SX | Sint Maarten |
| SY | Republika Syryjsko-Arabska |
| SZ | Suazi |
| TC | Wyspy Turks i Caicos |
| TD | Czad |
| TF | Francuskie Terytoria Południowe |
| TG | Iść |
| TH | Tajlandia |
| TJ | Tadżykistan |
| TK | Tokelau |
| TL | Timor Wschodni |
| TM | Turkmenia |
| TN | Tunezja |
| DO | Tonga |
| TR | Indyk |
| TT | Trynidad i Tobago |
| telewizja | Tuvalu |
| TW | Tajwan |
| TZ | Tanzania, Zjednoczona Republika |
| UA | Ukraina |
| UG | Uganda |
| UM | Stany Zjednoczone Dalekie Wyspy Mniejsze |
| NAS | Stany Zjednoczone |
| UY | Urugwaj |
| UZ | Uzbekistan |
| VA | Stolica Apostolska (Państwo Watykańskie) |
| VC | Saint Vincent i Grenadyny |
| VE | Wenezuela |
| VG | Wyspy Dziewicze, Brytyjskie |
| VI | Wyspy Dziewicze, Stany Zjednoczone |
| VN | Wietnam |
| VU | Vanuatu |
| WF | Wallis i Futuna |
| WS | Samoa |
| CZŁEK | Jemen |
| YT | Majotta |
| ZA | Afryka Południowa |
| ZM | Zambia |
| ZARAZ WRACAM | Zimbabwe |
