Jednotková cena
Poľské právo vyžaduje, aby internetový obchod zobrazoval jednotkovú cenu produktu - napr. cenu za kilogram, liter alebo meter. Plugin Polski for WooCommerce pridáva túto informáciu automaticky na stránku produktu, do zoznamu a do košíka.
Kedy je jednotková cena vyžadovaná
Section titled “Kedy je jednotková cena vyžadovaná”Jednotkovú cenu uvádzate pre produkty predávané na váhu, objem alebo dĺžku. Týka sa to okrem iného:
- potravinové produkty (cena za kg alebo liter)
- kozmetika a čistiace prostriedky (cena za 100 ml alebo liter)
- stavebné materiály (cena za bežný meter alebo štvorcový meter)
- sypké produkty (cena za kg)
Jednotková cena musí byť viditeľná všade, kde zobrazujete cenu produktu - na stránke produktu, vo výsledkoch vyhľadávania, v porovnávačoch a v košíku.
Konfigurácia
Section titled “Konfigurácia”Prejdite do WooCommerce > Nastavenia > Polski > Ceny a zapnite modul jednotkovej ceny. Po zapnutí sa v editore produktu objaví nová sekcia v záložke “Všeobecné”.
Polia v editore produktu
Section titled “Polia v editore produktu”| Pole | Popis | Príklad |
|---|---|---|
| Základné množstvo | Množstvo produktu v balení | 500 |
| Základná jednotka | Merná jednotka produktu | g |
| Referenčné množstvo | Referenčné množstvo pre jednotkovú cenu | 1 |
| Referenčná jednotka | Jednotka, za ktorú sa uvádza cena | kg |
Pre produkt s hmotnosťou 500 g a cenou 12,99 zł plugin automaticky vypočíta jednotkovú cenu ako 25,98 zł/kg.
Podporované jednotky
Section titled “Podporované jednotky”Plugin podporuje tieto merné jednotky:
- Hmotnosť: g, kg, mg
- Objem: ml, l, cl
- Dĺžka: mm, cm, m
- Kusy: szt (piece)
Plugin prepočítava jednotky automaticky. Ak má produkt hmotnosť v gramoch a referenčná jednotka je kilogram - hodnota sa prepočíta.
Varianty produktov
Section titled “Varianty produktov”Pre variabilné produkty nastavujete jednotkovú cenu na dvoch úrovniach:
- Na úrovni hlavného produktu - hodnota dedená všetkými variantmi
- Na úrovni variantu - prepisuje nastavenia hlavného produktu
Ak majú varianty rôznu hmotnosť (napr. 250 g a 500 g), nastavte jednotkovú cenu zvlášť pre každý variant. Plugin automaticky aktualizuje cenu, keď zákazník zmení variant (AJAX).
Shortcode
Section titled “Shortcode”Použite shortcode [polski_unit_price], aby ste zobrazili jednotkovú cenu na ľubovoľnom mieste.
Parametre
Section titled “Parametre”| Parameter | Typ | Predvolený | Popis |
|---|---|---|---|
product_id | int | aktuálny | ID produktu |
before | string | "" | Text pred cenou |
after | string | "" | Text po cene |
wrapper | string | span | Obaľujúci HTML element |
Príklady použitia
Section titled “Príklady použitia”Základné použitie na stránke produktu:
[polski_unit_price]S vlastným ID produktu a textom:
[polski_unit_price product_id="123" before="Cena za kg: " after=" brutto"]V šablóne PHP:
echo do_shortcode('[polski_unit_price product_id="' . $product->get_id() . '"]');Hook: polski/price/unit_price_html
Section titled “Hook: polski/price/unit_price_html”Filter umožňuje zmeniť HTML jednotkovej ceny pred zobrazením.
Signatúra
Section titled “Signatúra”apply_filters('polski/price/unit_price_html', string $html, float $unit_price, WC_Product $product, array $args): stringParametre
Section titled “Parametre”| Parameter | Typ | Popis |
|---|---|---|
$html | string | Vygenerovaný HTML jednotkovej ceny |
$unit_price | float | Vypočítaná jednotková cena |
$product | WC_Product | Objekt produktu WooCommerce |
$args | array | Pole s kľúčmi: base_qty, base_unit, ref_qty, ref_unit |
Príklad: pridanie CSS triedy
Section titled “Príklad: pridanie CSS triedy”add_filter('polski/price/unit_price_html', function (string $html, float $unit_price, WC_Product $product, array $args): string { $category_class = ''; if (has_term('napoje', 'product_cat', $product->get_id())) { $category_class = ' polski-unit-price--beverage'; }
return sprintf( '<span class="polski-unit-price%s">%s/%s</span>', esc_attr($category_class), wc_price($unit_price), esc_html($args['ref_unit']) );}, 10, 4);Príklad: skrytie jednotkovej ceny pre vybrané kategórie
Section titled “Príklad: skrytie jednotkovej ceny pre vybrané kategórie”add_filter('polski/price/unit_price_html', function (string $html, float $unit_price, WC_Product $product): string { if (has_term('uslugi', 'product_cat', $product->get_id())) { return ''; }
return $html;}, 10, 3);Import CSV
Section titled “Import CSV”Jednotkovú cenu importujete cez štandardný importér WooCommerce. Pridajte tieto stĺpce do súboru CSV:
| Stĺpec CSV | Popis |
|---|---|
polski_unit_base_qty | Základné množstvo |
polski_unit_base_unit | Základná jednotka |
polski_unit_ref_qty | Referenčné množstvo |
polski_unit_ref_unit | Referenčná jednotka |
Príklad riadku CSV:
"Kawa mielona 500g",29.99,500,g,1,kgNajčastejšie problémy
Section titled “Najčastejšie problémy”Jednotková cena sa nezobrazuje
Section titled “Jednotková cena sa nezobrazuje”Skontrolujte, či:
- Modul jednotkovej ceny je zapnutý v nastaveniach
- Produkt má vyplnené polia základného množstva a jednotky
- Šablóna podporuje hook
woocommerce_after_shop_loop_item_title(zoznam) awoocommerce_single_product_summary(stránka produktu)
Nesprávny prepočet
Section titled “Nesprávny prepočet”Skontrolujte, či sú základná a referenčná jednotka z rovnakej kategórie (napr. obe hmotnostné alebo obe objemové). Plugin neprepočítava gramy na litre.