Preskočiť na obsah

B2B katalógový režim

Katalógový režim zmení obchod na katalóg bez možnosti nákupu. Skryte ceny, zameňte tlačidlá za správy alebo presmerujte na cenovú ponuku. Určený pre B2B obchody s individuálnymi cenami.

Prejdite do WooCommerce > Nastavenia > Polski PRO > Katalógový režim a zapnite modul (možnosť polski_catalog).

NastavenieMožnosť v databázePredvolená hodnotaPopis
Zapnúť katalógový režimpolski_catalogNieAktivuje katalógový režim
Skryť cenypolski_catalog_hide_pricesÁnoOdstráni zobrazovanie cien
Skryť tlačidlo košíkapolski_catalog_hide_cartÁnoOdstráni tlačidlo “Pridať do košíka”
Náhradný text cenypolski_catalog_price_text”Opýtať sa na cenu”Text zobrazený namiesto ceny
Správa na produktepolski_catalog_notice""Správa zobrazená na stránke produktu
Presmerovať na RFQpolski_catalog_redirect_rfqNiePresmerovanie na formulár cenovej ponuky
Podmienený režimpolski_catalog_conditionalallall, guests, roles

Katalógový režim môže byť aktívny:

  • Pre všetkých (all) - každý vidí katalóg bez cien
  • Len pre neprihlásených (guests) - prihlásení zákazníci vidia ceny a môžu nakupovať
  • Pre vybrané roly (roles) - katalóg aktívny len pre vybrané roly WordPress

Režim “Len pre neprihlásených” je populárny v B2B - veľkoobchod vyžaduje registráciu pred odhalením cien.

// Przykład: własna logika warunkowa
add_filter('polski_pro/catalog/is_active', function (bool $is_active): bool {
// Wyłącz tryb katalogowy dla klientów z co najmniej 5 zamówieniami
if (is_user_logged_in()) {
$order_count = wc_get_customer_order_count(get_current_user_id());
if ($order_count >= 5) {
return false;
}
}
return $is_active;
});

Modul používa filter woocommerce_get_price_html a nahradí cenu nakonfigurovaným textom.

/**
* Filtruje náhradný text ceny v katalógovom režime.
*
* @param string $replacement Náhradný text
* @param \WC_Product $product Objekt produktu
*/
apply_filters('polski_pro/catalog/price_replacement', string $replacement, \WC_Product $product): string;

Príklad - rôzne texty pre kategórie:

add_filter('polski_pro/catalog/price_replacement', function (string $replacement, \WC_Product $product): string {
if (has_term('premium', 'product_cat', $product->get_id())) {
return '<span class="price-inquiry">Cena ustalana indywidualnie</span>';
}
return $replacement;
}, 10, 2);

Modul blokuje nákup filtrom woocommerce_is_purchasable:

/**
* Filtruje, či je produkt dostupný na nákup v katalógovom režime.
*
* @param bool $purchasable Či je produkt dostupný na nákup
* @param \WC_Product $product Objekt produktu
*/
apply_filters('polski_pro/catalog/is_purchasable', bool $purchasable, \WC_Product $product): bool;

Príklad - povolenie nákupu vybraných produktov:

add_filter('polski_pro/catalog/is_purchasable', function (bool $purchasable, \WC_Product $product): bool {
$always_purchasable = [101, 102, 103]; // ID produktów zawsze dostępnych
if (in_array($product->get_id(), $always_purchasable, true)) {
return true;
}
return $purchasable;
}, 10, 2);

Keď je polski_catalog_notice nastavené, na stránke produktu sa zobrazí správa o katalógovom režime.

Príklad správy:

Ak chcete poznať cenu tohto produktu, kontaktujte náš obchodný tím alebo vyplňte formulár cenovej ponuky.

Keď je polski_catalog_redirect_rfq zapnuté, tlačidlo smeruje na formulár cenovej ponuky (modul RFQ):

  1. Tlačidlo “Opýtať sa na cenu” namiesto “Pridať do košíka”
  2. Automatické odovzdanie ID produktu do formulára RFQ
  3. Pre-fill názvu produktu vo formulári
  4. Návrat na produkt po odoslaní ponuky

Aby integrácia fungovala, oba moduly - katalógový a RFQ - musia byť aktívne.

Modul automaticky skrýva:

PrvokHook WooCommerceEfekt
Tlačidlo “Pridať do košíka”woocommerce_is_purchasableProdukt označený ako nedostupný na nákup
Cenawoocommerce_get_price_htmlHTML ceny nahradené textom
Ikona košíka v hlavičkepolski_pro/catalog/hide_cart_iconSkryje ikonu mini-košíka
Stránka košíkatemplate_redirectPresmerovanie z /cart/ na domovskú stránku
Stránka pokladnetemplate_redirectPresmerovanie z /checkout/ na domovskú stránku

Každú možnosť zapnite alebo vypnite nezávisle. Napríklad:

  • Skry ceny, ale ponechaj tlačidlo košíka (zákazník kupuje “za neznámu cenu” - kontakt po objednávke)
  • Skry tlačidlo košíka, ale zobraz ceny (zákazník vidí ceny, ale musí sa opýtať na nákup)
  • Skry všetko (plný katalógový režim)

Vylúčte produkt z katalógového režimu: editácia produktu > Polski PRO > Katalógový režim > zaškrtnite “Vylúčiť z katalógového režimu”.

/**
* Filtruje kategórie vylúčené z katalógového režimu.
*
* @param array $excluded_categories Pole ID kategórií
*/
apply_filters('polski_pro/catalog/excluded_categories', array $excluded_categories): array;

Príklad:

add_filter('polski_pro/catalog/excluded_categories', function (array $excluded_categories): array {
$excluded_categories[] = 15; // "Akcesoria" - zawsze dostępne do zakupu
$excluded_categories[] = 28; // "Outlet"
return $excluded_categories;
});

Modul pridáva CSS triedy do <body> uľahčujúce štýlovanie:

TriedaKedy sa pridáva
polski-catalog-modeKatalógový režim je aktívny
polski-catalog-prices-hiddenCeny sú skryté
polski-catalog-cart-hiddenTlačidlo košíka je skryté

Príklad CSS:

.polski-catalog-mode .price {
display: none; /* Dodatkowe ukrycie ceny, jeśli motyw nie respektuje filtra */
}
.polski-catalog-mode .single_add_to_cart_button {
background-color: #0073aa;
content: "Zapytaj o cenę";
}

Ceny sa stále zobrazujú napriek zapnutiu katalógového režimu Niektoré šablóny používajú vlastné metódy zobrazovania cien a obchádzajú filter woocommerce_get_price_html. Použite CSS triedy .polski-catalog-prices-hidden .price { display: none; } ako poistku.

Zákazník môže pridať produkt do košíka cez priamy URL Modul to blokuje na úrovni filtra woocommerce_is_purchasable. Ak sa problém vyskytuje, skontrolujte, či iný doplnok neprepisuje tento filter s vyššou prioritou.

Podmienený režim nefunguje správne s cache Cache doplnky môžu servírovať verziu z cache nezávisle od stavu prihlásenia. Nakonfigurujte cache doplnok tak, aby oddeľoval cache pre prihlásených a neprihlásených používateľov.

Táto stránka má výlučne informačný charakter a nepredstavuje právne poradenstvo. Pred nasadením sa poraďte s právnikom. Polski for WooCommerce je open source softvér (GPLv2) poskytovaný bez záruky.