---
site_name: WPlama
site_description: "Správa, opravy a vývoj WordPress webů a e-shopů"
site_url: https://www.wplama.cz
contact_email: info@wplama.cz

title: Jak ve WooCommerce deaktivovat určitý způsob platby pro vybranou dopravu
url: https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/
date: 2016-12-15
modified: 2018-08-06
author: Tomáš Cirkl
type: post
categories: [WooCommerce]
tags: [doprava, platební metody, WooCommerce]
---

WooCommerce

# Jak ve WooCommerce deaktivovat určitý způsob platby pro vybranou dopravu

[![profil 100x100](https://www.wplama.cz/wp-content/uploads/2026/11/profil-100x100.jpg "profil 100x100") **Tomáš Cirkl**](https://www.wplama.cz/author/tomas/) Publikováno 15. 12. 2016 Aktualizováno **6. 8. 2018** 2 min čtení

Pozor:

Článek je z roku 2016. Některé postupy se mohly změnit.

![prague metro subway public transport network picjumbo com](https://www.wplama.cz/wp-content/uploads/2016/12/prague-metro-subway-public-transport-network-picjumbo-com.jpg "prague metro subway public transport network picjumbo com")

Obsah článku (2 kapitoly)

1. [Získání ID platební metody](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#ziskani-id-platebni-metody)
2. [Získání ID dopravy](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#ziskani-id-dopravy)

Existuje spousta důvodů proč chtít deaktivovat specifickou platební metodu pro vybranou dopravu ve WooCommerce. V tomto článku si ukážeme, jak toho pomocí malého snippetu dokázat.

*Poznámka: Tento způsob se hodí především při práci s Bankovním převodem, u kterého chybí možnost nastavení povolené dopravy.*

Pro příklad ukážu, jak deaktivovat možnost platby **Bankovním převodem** pro **Místní vyzvednutí**. Ať už to budete upravovat pro jakoukoliv platební metodu nebo doručení, vždy budete potřebovat znát jejich ID.

## Získání ID platební metody

ID platební metody získáte tak, že se přihlásíte do WordPress administrace a v levém menu vyberete *WooCommerce -> Nastavení* a ze záložky pak **Pokladna**. Zde si rozkliknete vybranou platební metodu. Nyní se podíváte na URL a na konci je *&section=**idplatebnimetody***.

V našem příkladě u Bankovního převodu je zde *&section=**bacs***.ID je tedy „bacs“.

## Získání ID dopravy

Zde je to trochu složitější. Od verze WooCommerce 2.6+ se to změnilo a sledováním parametru v URL se již ID nedozvíte. Místo toho musíte jít na stránku Pokladny a pomocí **Průzkumníka nebo zdrojového kódu** najít ID dopravy.

ID je hodnota value u dané dopravy. V naše příkladu je to **local_pickup:2**.

[![ID dopravy](https://www.wplama.cz/wp-content/uploads/2016/12/id-dopravy-1-1024x527.png "ID dopravy")](https://www.wplama.cz/wp-content/uploads/2016/12 / id-dopravy-1.png)

ID dopravy

Když nyní víme všechno potřebné, stačí do *functions.php* v šabloně (ideálně [child šabloně)](https://www.wplama.cz/vytvorit-child-sablonu/) vložit kód. **Nezapomeňte však upravit ID.** ID dopravy se nachází na řádku 10 a ID platební metody je na řádku 13.

```
/**
 * Filtr platební brány
 */
function my_custom_available_payment_gateways( $gateways ) {
if ( ! is_admin() ) {
$chosen_shipping_rates = WC()->session->get( ‘chosen_shipping_methods’ );

 if(!empty($chosen_shipping_rates)){
 // Když je vybraná doprava
 if ( in_array( 'local_pickup:1', $chosen_shipping_rates ) ) :

 // Odstraň platební metodu
 unset( $gateways['bacs'] );

 endif;
 }
 return $gateways;
}
}
add_filter( 'woocommerce_available_payment_gateways', 'my_custom_available_payment_gateways' );

```

Nyní jen vše uložte a můžete otestovat, zda se již vybraná platební metoda skrývá při výběru určité dopravy.

- [#doprava](https://www.wplama.cz/stitek/doprava/)
- [#platební metody](https://www.wplama.cz/stitek/platebni-metody/)
- [#WooCommerce](https://www.wplama.cz/stitek/woocommerce/)

Sdílet

-
- [](mailto:?subject=Jak ve WooCommerce deaktivovat určitý způsob platby pro vybranou dopravu&body=Jak ve WooCommerce deaktivovat určitý způsob platby pro vybranou dopravu https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/)
- [](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.wplama.cz%2Fdeaktivovat-urcity-zpusob-platby-vybranou-dopravu%2F)
- [](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fwww.wplama.cz%2Fdeaktivovat-urcity-zpusob-platby-vybranou-dopravu%2F)

![profil 150x150](https://www.wplama.cz/wp-content/uploads/2026/11/profil-150x150.jpg "profil 150x150")

Autor

Tomáš Cirkl

Zakladatel WPlama. Od roku 2014 se starám o weby a e‑shopy na WordPressu a píšu o tom, co při té práci řeším. Třikrát jsem přednášel na Word Campech.

1 035 článků [Všechny články autora →](https://www.wplama.cz/author/tomas/)

## Komentáře (18)

[Přidat komentář →](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#respond)

A

Admiva [14. 3. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-51739)

Ahoj, nějak se ti tam rozhodilo formátování a háže to chybu. V 6. řádku máš: „$chosen_shipping_rates = WC()->session->get( ‚chosen_shipping_methods‘ );“
Správně by mělo být:
$chosen_shipping_rates = WC()->session->get( ‚chosen_shipping_methods‘ );

Jinak díky a ať se daří!

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-51739)

TC

Tomáš Cirkl WPlama [14. 3. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-51741)

Díky, opraveno.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-51741)

---

M

Milan [24. 5. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54711)

Správně by mělo být:
$chosen_shipping_rates = WC()->session->get( ‚chosen_shipping_methods‘ );

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54711)

---

---

R

Robin [29. 4. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54047)

Ahoj, lze to takto také nastavit pro více než jednu dopravu?

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54047)

TC

Tomáš Cirkl WPlama [29. 4. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54049)

Ano, jen musíte tu funkci drobet upravit.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54049)

---

---

K

Kristýna [10. 5. 2017](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54493)

Dobrý den, děkuji za skvělou radu, funguje to 🙂 při osobním vyzvednutí se nezobrazuje bankovní převod. Ale ještě bych potřebovala vyřešit 40 Kč (extra charge z pluginu COD), která mi zůstává v dobírce při osobním vyzvednutí?

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-54493)

---

P

Pavel [29. 3. 2018](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-66448)

Zdravím, ještě bych před voláním $chosen_shipping_rates = WC()->session->get( ‘chosen_shipping_methods’ ); doporučil pomocí is_admin ověřit, že nejste v administraci, ale na frontendu. U mě konkrétně to způsobilo, že nefungovala stránka pro editaci menu.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-66448)

---

J

Jirka [6. 8. 2018](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-72747)

Dobrý den. Tento kód funguje pěkně. Bohužel jak někdo psal výše, zakáže nastavit vzhled menu v administraci (tj. vubec se neobjevi). Máte tip co do kódu dopsat, aby se tak nedělo? Děkuji

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-72747)

TC

Tomáš Cirkl WPlama [7. 8. 2018](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-72770)

Zdravím,
kód jsem upravil.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-72770)

---

---

P

Petan [4. 12. 2018](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-75228)

Zdravím Tome.
Skvělý návod a pracuje dobře. Jak bylo napsáno výše, jak přepsat kód pokud mám více doprav a více plateb? Nemohl by si poskytnout také návod.
Pokud se jedná o jeden způsob dopravy(např. Česká pošta-balík na poštu – na řádku 10 if ( in_array( ‚ID přepravy Česká pošta-balík na poštu‘, $chosen_shipping_rates ) ) :
Na řádku 13, co je omezení platební brány unset( $gateways[‚ID platební brány-např. v hotovosti‘] );.
Pod tento řádek jsem přidal další omezení platební brány unset( $gateways[‚ID další platební brány-např. bankovní převod‘] );. Při vybrání dopravy Česká pošta-balík na poštu se v tuto chvíli zobrazuje pouze dobírka. Toto je pro jeden způsob dopravy.
Potřeboval bych nadefinovat tímto způsobem více dopravních možností a kombinovat s platbami.
Například.
Doprava Česká pošta – balik na poštu, cena XY – Zobrazená Platba pouze dobírka
Doprava Česká pošta – balik na poštu-platba předem na účet, cena XXY – Zobrazená platba pouze bankovní převod
Doprava osobní vyzvednutí – Zobrazená platba pouze v hotovosti.

Mnohokrát díky

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-75228)

---

T

Tomáš [6. 11. 2019](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-91555)

Dobrý den, mám problém, když si zákazník vybere dodání Na dobírku, tak se v košíku ukazuje stále možnost platit i platební kartou (platební brána Tatrabanka Card Pay), což je logický nesmysl. Nevěděli byste, prosím, někdo poradit, jak mám tohle vyřešit? Děkuji. Tomáš.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-91555)

TC

Tomáš Cirkl WPlama [6. 11. 2019](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-91570)

Zdravím,
dotaz moc nechápu. Posloupnost je tam produkt -> košík -> pokladna, přičemž dopravu si vybírá v posledním kroku.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-91570)

---

---

J

Jan [15. 2. 2020](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-105178)

Dobrý den,
kód stále hlásí chybu na řádku 6, jak již bylo zmiňováno, ale ani jedna z verzí zde uvedených není funkční:
Warning: Use of undefined constant ‘chosen_shipping_methods’ – assumed ‚‘chosen_shipping_methods’‘ (this will throw an Error in a future version of PHP) in /www/doc/www.vermikompostuj.cz/www/wp-content/themes/astra-child-theme/functions.php on line 6
Mohu poprosit o nějaké opravené řešení?

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-105178)

---

J

jejda [18. 2. 2020](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-105749)

Tohle umí plugin České služby [https://github.com/pavelevap/ceske-sluzby](https://github.com/pavelevap/ceske-sluzby)

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-105749)

J

Jerry [18. 6. 2020](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-133628)

Omg! díky za ten odkaz, něco takovýho (zaokrouhlení celkové částky a jiný hračky) jsem hledal strašně dlouho!! dík díik

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-133628)

---

---

J

jejda [30. 6. 2020](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-136424)

Tento snippet, který se vloží do function.php, skryje možnosti platby (dobírka, bankovní převod a paypal) při místním vyzvednutí (platbě na prodejně).

function we_gateway_disable_shipping( $available_gateways ) {

global $woocommerce;

if ( !is_admin() ) {

$chosen_methods = WC()->session->get( ‚chosen_shipping_methods‘ );

$chosen_shipping = $chosen_methods[0];

if ( isset( $available_gateways[‚cod‘] ) && 0 === strpos( $chosen_shipping, ‚local_pickup‘ ) ) {
unset( $available_gateways[‚cod‘] );
}
if ( isset( $available_gateways[‚bacs‘] ) && 0 === strpos( $chosen_shipping, ‚local_pickup‘ ) ) {
unset( $available_gateways[‚bacs‘] );
}
if ( isset( $available_gateways[‚ppec_paypal‘] ) && 0 === strpos( $chosen_shipping, ‚local_pickup‘ ) ) {
unset( $available_gateways[‚ppec_paypal‘] );
}

}

return $available_gateways;
}
add_filter( ‚woocommerce_available_payment_gateways‘, ‚we_gateway_disable_shipping‘ );

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-136424)

---

J

Jakub [5. 5. 2021](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-224342)

Zdravím, vidím, že někteří zde již žádali o úpravu kódu pokud je potřeba toto nastavit pro více doprav. Najde se někdo, kdo by s tím pomohl a dal upravený kód alespoň pro dvě dopravy u kterých se nemá zobrazovat platba převodem? Mockrát děkuji Jakub.

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-224342)

---

K

karel [31. 1. 2024](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-316092)

Jejda chtěl jsem skusit tvuj kod na skrytí plateb při místním vyzvednutí a musel jsem ho trochu poupravit byly tam na prd uvozovky a nebralo mi to. A nemam tam paypal tak se třeba bude někomu hodit.

function we_gateway_disable_shipping( $available_gateways ) {

global $woocommerce;

if ( !is_admin() ) {

$chosen_methods = WC()->session->get( ‚chosen_shipping_methods‘ );

$chosen_shipping = $chosen_methods[0];

if ( isset( $available_gateways[‚cod‘] ) && 0 === strpos( $chosen_shipping, ‚local_pickup:2‘ ) ) {
unset( $available_gateways[‚cod‘] );
}
if ( isset( $available_gateways[‚bacs‘] ) && 0 === strpos( $chosen_shipping, ‚local_pickup:2‘ ) ) {
unset( $available_gateways[‚bacs‘] );
}

}

return $available_gateways;
}
add_filter( ‚woocommerce_available_payment_gateways‘, ‚we_gateway_disable_shipping‘ );

[Odpovědět](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#comment-316092)

---

### Přidat komentář [Zrušit odpověď](https://www.wplama.cz/deaktivovat-urcity-zpusob-platby-vybranou-dopravu/#respond)

[← Předchozí článek Jak opravit chybu 404 Nenalezeno u XML sitemap v pluginu Yoast SEO](https://www.wplama.cz/xml-sitemap-yoast-seo-chyba-404-nenalezeno/) [Další článek → Průvodce WooCommerce pro začátečníky: Nastavení doručení a zóny dopravy](https://www.wplama.cz/zony-dopravy/)

Související

## Mohlo by vás zajímat

[Všechny články z rubriky WooCommerce →](https://www.wplama.cz/wordpress/woocommerce/)

![automatizace woocommerce](https://www.wplama.cz/wp-content/uploads/2025/09/automatizace-woocommerce.png "automatizace woocommerce")

WooCommerce

### [Zpracování objednávek ve WooCommerce: Možnosti automatizace, díky kterým bude provoz e‑shopu efektivní](https://www.wplama.cz/automatizace-woocommerce/)

22. 9. 2025 5 min čtení

---

![modernizovane e mailove sablony a nahledy](https://www.wplama.cz/wp-content/uploads/2025/05/modernizovane-e-mailove-sablony-a-nahledy.webp "modernizovane e mailove sablony a nahledy")

WooCommerce

### [WooCommerce 9.8: Modernizovaný design e‑mailů](https://www.wplama.cz/woocommerce-9-8-modernizovany-design-e-mailu/)

13. 5. 2025 3 min čtení

---

![wordpress bezpecnost](https://www.wplama.cz/wp-content/uploads/2018/10/wordpress-bezpecnost.png "wordpress bezpecnost")

WooCommerce

### [POZOR: Falešný e‑mail se vydává za WooCommerce a nabádá ke stažení škodlivého pluginu](https://www.wplama.cz/pozor-falesny-e-mail-se-vydava-za-woocommerce-a-nabada-ke-stazeni-skodliveho-pluginu/)

7. 5. 2025 3 min čtení

---