Jednotkova cena
Polske pravo vyzaduje, aby obchod zobrazoval jednotkovou cenu produktu - napr. cenu za kilogram, litr nebo metr. Plugin pridava tuto informaci automaticky na strance produktu, v listingu a v kosiku.
Kdy je jednotkova cena vyzadovana
Section titled “Kdy je jednotkova cena vyzadovana”Jednotkovou cenu uvadite pro produkty prodavane na vahu, objem nebo delku. Tyka se to:
- potraviny (cena za kg nebo litr)
- kosmetiku a cistici prostredky (cena za 100 ml nebo litr)
- stavebni materialy (cena za bezny metr nebo ctverecni metr)
- sypke produkty (cena za kg)
Jednotkova cena musi byt viditelna vsude, kde se zobrazuje cena produktu.
Konfigurace
Section titled “Konfigurace”Prejdete do WooCommerce > Nastaveni > Polski > Ceny a aktivujte modul jednotkove ceny. V editoru produktu se objevi nova sekce v zalozce “Obecne”.
Pole v editoru produktu
Section titled “Pole v editoru produktu”| Pole | Popis | Priklad |
|---|---|---|
| Bazove mnozstvi | Mnozstvi produktu v baleni | 500 |
| Bazova jednotka | Merna jednotka produktu | g |
| Referencni mnozstvi | Referencni mnozstvi pro jednotkovou cenu | 1 |
| Referencni jednotka | Jednotka, za kterou se udava cena | kg |
Pro produkt o hmotnosti 500 g a cene 12,99 PLN plugin automaticky vypocita jednotkovou cenu jako 25,98 PLN/kg.
Podporovane jednotky
Section titled “Podporovane jednotky”Plugin podporuje nasledujici merne jednotky:
- Hmotnost: g, kg, mg
- Objem: ml, l, cl
- Delka: mm, cm, m
- Kusy: szt (kus)
Prepocet mezi jednotkami probiha automaticky. Pokud ma produkt hmotnost v gramech a referencni jednotka je kilogram, plugin prepocita sam.
Varianty produktu
Section titled “Varianty produktu”Pro variantni produkty (variable products) lze jednotkovou cenu nastavit na dvou urovnich:
- Na urovni hlavniho produktu - hodnota dedena vsemi variantami
- Na urovni varianty - prepise nastaveni hlavniho produktu
Pro varianty o ruzne hmotnosti (napr. 250 g a 500 g) nastavte jednotkovou cenu zvlast pro kazdou variantu. Plugin aktualizuje zobrazenou cenu pri zmene varianty (AJAX).
Shortcode
Section titled “Shortcode”Pouzijte shortcode [polski_unit_price] pro zobrazeni jednotkove ceny na libovolnem miste.
Parametry
Section titled “Parametry”| Parametr | Typ | Vychozi | Popis |
|---|---|---|---|
product_id | int | aktualni | ID produktu |
before | string | "" | Text pred cenou |
after | string | "" | Text za cenou |
wrapper | string | span | Obalujici HTML element |
Priklady pouziti
Section titled “Priklady pouziti”Zakladni pouziti na strance produktu:
[polski_unit_price]S vlastnim ID produktu a textem:
[polski_unit_price product_id="123" before="Cena za kg: " after=" brutto"]V sablone 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”Tento filtr umoznuje upravit HTML jednotkove ceny pred zobrazenim.
Signatura
Section titled “Signatura”apply_filters('polski/price/unit_price_html', string $html, float $unit_price, WC_Product $product, array $args): stringParametry
Section titled “Parametry”| Parametr | Typ | Popis |
|---|---|---|
$html | string | Vygenerovany HTML jednotkove ceny |
$unit_price | float | Vypocitana jednotkova cena |
$product | WC_Product | Objekt produktu WooCommerce |
$args | array | Pole s klici: base_qty, base_unit, ref_qty, ref_unit |
Priklad: pridani CSS tridy
Section titled “Priklad: pridani CSS tridy”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);Priklad: skryti jednotkove ceny pro vybrane kategorie
Section titled “Priklad: skryti jednotkove ceny pro vybrane kategorie”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);CSV import
Section titled “CSV import”Jednotkovou cenu lze importovat pomoci standardniho importeru WooCommerce. Pridejte nasledujici sloupce do souboru CSV:
| Sloupec CSV | Popis |
|---|---|
polski_unit_base_qty | Bazove mnozstvi |
polski_unit_base_unit | Bazova jednotka |
polski_unit_ref_qty | Referencni mnozstvi |
polski_unit_ref_unit | Referencni jednotka |
Priklad radku CSV:
"Kawa mielona 500g",29.99,500,g,1,kgNejcastejsi problemy
Section titled “Nejcastejsi problemy”Jednotkova cena se nezobrazuje
Section titled “Jednotkova cena se nezobrazuje”Zkontrolujte, zda:
- Modul jednotkove ceny je aktivovan v nastaveních
- Produkt ma vyplnena pole bazoveho mnozstvi a jednotky
- Motiv podporuje hook
woocommerce_after_shop_loop_item_title(listing) awoocommerce_single_product_summary(stranka produktu)
Nespravny prepocet
Section titled “Nespravny prepocet”Ujistete se, ze bazova a referencni jednotka patri do stejne kategorie (napr. obe hmotnostni nebo obe objemove). Plugin neprepocitava mezi kategoriemi - nelze prepocitat gramy na litry.