Přeskočit na obsah

Jednotková cena

Polské právo vyžaduje, aby internetový obchod ukazoval jednotkovou cenu produktu - např. cenu za kilogram, litr nebo metr. Plugin Polski for WooCommerce přidává tuto informaci automaticky na stránce produktu, ve výpisu a v košíku.

Kdy je jednotková cena vyžadována

Sekce “Kdy je jednotková cena vyžadována”

Jednotkovou cenu uvádíte u produktů prodávaných na váhu, objem nebo délku. Týká se to mimo jiné:

  • potravinové produkty (cena za kg nebo litr)
  • kosmetiku a čisticí prostředky (cena za 100 ml nebo litr)
  • stavební materiály (cena za běžný metr nebo metr čtvereční)
  • sypké produkty (cena za kg)

Jednotková cena musí být viditelná všude, kde ukazujete cenu produktu - na stránce produktu, ve výsledcích vyhledávání, v porovnávačích a v košíku.

Přejděte do WooCommerce > Nastavení > Polski > Ceny a zapněte modul jednotkové ceny. Po zapnutí se v editoru produktu objeví nová sekce na záložce “Obecné”.

PolePopisPříklad
Základní množstvíMnožství produktu v balení500
Základní jednotkaMěrná jednotka produktug
Referenční množstvíReferenční množství pro jednotkovou cenu1
Referenční jednotkaJednotka, za kterou je cena uváděnakg

Pro produkt o váze 500 g a ceně 12,99 zł plugin automaticky vypočítá jednotkovou cenu jako 25,98 zł/kg.

Plugin podporuje tyto měrné jednotky:

  • Váha: g, kg, mg
  • Objem: ml, l, cl
  • Délka: mm, cm, m
  • Kusy: szt (kus)

Plugin přepočítává jednotky automaticky. Pokud má produkt váhu v gramech a referenční jednotkou je kilogram - hodnota bude přepočítána.

U variabilních produktů nastavujete jednotkovou cenu na dvou úrovních:

  1. Na úrovni hlavního produktu - hodnota zděděná všemi variantami
  2. Na úrovni varianty - přepisuje nastavení hlavního produktu

Pokud mají varianty různou váhu (např. 250 g a 500 g), nastavte jednotkovou cenu zvlášť pro každou variantu. Plugin automaticky aktualizuje cenu, když zákazník změní variantu (AJAX).

Použijte shortcode [polski_unit_price] pro zobrazení jednotkové ceny na libovolném místě.

ParametrTypVýchozíPopis
product_idintaktuálníID produktu
beforestring""Text před cenou
afterstring""Text po ceně
wrapperstringspanObalující HTML element

Základní použití na stránce produktu:

[polski_unit_price]

S vlastním ID produktu a textem:

[polski_unit_price product_id="123" before="Cena za kg: " after=" s daní"]

V PHP šabloně:

echo do_shortcode('[polski_unit_price product_id="' . $product->get_id() . '"]');

Hook: polski/price/unit_price_html

Sekce “Hook: polski/price/unit_price_html”

Filtr umožňuje změnit HTML jednotkové ceny před zobrazením.

apply_filters('polski/price/unit_price_html', string $html, float $unit_price, WC_Product $product, array $args): string
ParametrTypPopis
$htmlstringVygenerovaný HTML jednotkové ceny
$unit_pricefloatVypočítaná jednotková cena
$productWC_ProductObjekt produktu WooCommerce
$argsarrayPole s klíči: base_qty, base_unit, ref_qty, ref_unit

Příklad: přidání CSS třídy

Sekce “Příklad: přidání CSS třídy”
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);

Příklad: skrytí jednotkové ceny pro vybrané kategorie

Sekce “Příklad: skrytí jednotkové ceny pro vybrané 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);

Jednotkovou cenu importujete přes standardní importér WooCommerce. Přidejte tyto sloupce do souboru CSV:

Sloupec CSVPopis
polski_unit_base_qtyZákladní množství
polski_unit_base_unitZákladní jednotka
polski_unit_ref_qtyReferenční množství
polski_unit_ref_unitReferenční jednotka

Příklad řádku CSV:

"Kawa mielona 500g",29.99,500,g,1,kg

Nejčastější problémy

Sekce “Nejčastější problémy”

Jednotková cena se nezobrazuje

Sekce “Jednotková cena se nezobrazuje”

Zkontrolujte, zda:

  1. Modul jednotkové ceny je zapnutý v nastavení
  2. Produkt má vyplněná pole základního množství a jednotky
  3. Šablona podporuje hook woocommerce_after_shop_loop_item_title (výpis) a woocommerce_single_product_summary (stránka produktu)

Zkontrolujte, zda jsou základní a referenční jednotka ze stejné kategorie (např. obě váhové nebo obě objemové). Plugin nepřepočítává gramy na litry.

Tato stránka má výhradně informativní charakter a nepředstavuje právní poradenství. Před nasazením se poraďte s právníkem. Polski for WooCommerce je open source software (GPLv2) dodávaný bez záruky.