Přeskočit na obsah

Vyzivove hodnoty

Obchod s potravinami musi zobrazovat tabulku vyzivovych hodnot (narizeni EU c. 1169/2011). Plugin umoznuje pridat tabulku ke kazdemu produktu ve formatu v souladu s predpisy.

Podle cl. 30 narizeni FIC musi tabulka vyzivovych hodnot obsahovat alespon:

SlozkaJednotkaKlic JSON
Energeticka hodnotakJ / kcalenergy_kj, energy_kcal
Tukygfat
z toho nasycene mastne kyselinygsaturated_fat
Sacharidygcarbohydrates
z toho cukrygsugars
Bilkovinygprotein
Sulgsalt

Doplnkove lze uvest (cl. 30 odst. 2 FIC):

SlozkaJednotkaKlic JSON
Mononenasycene mastne kyselinygmonounsaturated_fat
Polynenasycene mastne kyselinygpolyunsaturated_fat
Polyolygpolyols
Skrobgstarch
Vlakninagfibre
Vitamin Augvitamin_a
Vitamin Dugvitamin_d
Vitamin Emgvitamin_e
Vitamin Kugvitamin_k
Vitamin Cmgvitamin_c
Thiamin (B1)mgthiamine
Riboflavin (B2)mgriboflavin
Niacin (B3)mgniacin
Vitamin B6mgvitamin_b6
Kyselina listovaugfolic_acid
Vitamin B12ugvitamin_b12
Biotinugbiotin
Kyselina pantothenovamgpantothenic_acid
Draslkmgpotassium
Chlormgchloride
Vapnikmgcalcium
Fosformgphosphorus
Horczkmgmagnesium
Zelezomgiron
Zinekmgzinc
Medmgcopper
Manganmgmanganese
Fluoridmgfluoride
Selenugselenium
Chromugchromium
Molybdenugmolybdenum
Jodugiodine

Prejdete do WooCommerce > Nastaveni > Polski > Potraviny a aktivujte podmodul “Vyzivove hodnoty”.

NastaveniVychoziPopis
Referencni jednotkana 100 gVychozi jednotka: na 100 g nebo na 100 ml
Zobrazit % RHPAnoReferencni hodnota prijmu (% denniho doporuceneho prijmu)
Pozice tabulkyZalozkaKde zobrazit tabulku na strance produktu
Volitelne slozkyVlaknina, vitaminyKtere volitelne slozky zobrazovat

V zalozce “Potraviny” v editoru produktu je formular vyzivovych hodnot. Vyplnte pole ciselnymi hodnotami na 100 g nebo 100 ml.

Kazdy produkt muze mit individualni referencni jednotku. Napoje by mely mit nastaveno “na 100 ml”, tuhe produkty - “na 100 g”. Pokud nenastavite, bude pouzita vychozi hodnota z nastaveni.

Volitelne muzete uvest take velikost porce a vyzivove hodnoty na porci:

PolePopis
Velikost porcenapr. “30 g”, “250 ml”, “1 platek (25 g)“
Pocet porci v baleninapr. “10”

Vyzivove hodnoty jsou uchovavany v databazi jako JSON v meta poli _polski_nutrients. Format:

{
"energy_kj": 1046,
"energy_kcal": 250,
"fat": 9.5,
"saturated_fat": 3.2,
"carbohydrates": 31.0,
"sugars": 5.4,
"fibre": 2.1,
"protein": 8.7,
"salt": 1.2,
"ref_unit": "100g",
"serving_size": "30g",
"servings_per_package": 10
}
  • Hodnoty musi byt cisla (int nebo float)
  • Oddelovac desetinnych mist v JSON: tecka (napr. 9.5)
  • Hodnoty nesmi byt zaporne
  • energy_kj a energy_kcal by mely byt konzistentni (1 kcal = 4.184 kJ)
  • Podslozky nesmi prekrocit nadrazenou slozku (napr. saturated_fat <= fat)

Pouzijte shortcode [polski_nutrients] pro zobrazeni tabulky vyzivovych hodnot.

ParametrTypVychoziPopis
product_idintaktualniID produktu
show_rwsbooltrueZda zobrazit % RHP
show_servingboolfalseZda zobrazit sloupec na porci
fieldsstringallSlozky k zobrazeni (oddelene carkami)
layoutstringtableRozlozeni: table, list, compact
wrapperstringdivObalujici HTML element

Uplna tabulka vyzivovych hodnot:

[polski_nutrients]

S hodnotami na porci:

[polski_nutrients show_serving="true"]

Pouze zakladni slozky:

[polski_nutrients fields="energy_kcal,fat,carbohydrates,protein,salt"]

Kompaktni rozlozeni (bez tabulky):

[polski_nutrients layout="compact"]

Pro konkretni produkt:

[polski_nutrients product_id="123" show_rws="true" show_serving="true"]

V sablone PHP:

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

Shortcode generuje tabulku v souladu se standardem EU:

<div class="polski-nutrients">
<table class="polski-nutrients__table">
<thead>
<tr>
<th>Wartość odżywcza</th>
<th>per 100 g</th>
<th>% RWS*</th>
</tr>
</thead>
<tbody>
<tr>
<td>Wartość energetyczna</td>
<td>1046 kJ / 250 kcal</td>
<td>13%</td>
</tr>
<tr>
<td>Tłuszcz</td>
<td>9,5 g</td>
<td>14%</td>
</tr>
<tr class="polski-nutrients__sub">
<td>w tym kwasy tłuszczowe nasycone</td>
<td>3,2 g</td>
<td>16%</td>
</tr>
<!-- ... -->
</tbody>
<tfoot>
<tr>
<td colspan="3">
* Referencyjna wartość spożycia dla przeciętnej osoby dorosłej (8400 kJ / 2000 kcal)
</td>
</tr>
</tfoot>
</table>
</div>

Plugin pocita % RHP automaticky na zaklade referencnich hodnot z prilohy XIII narizeni FIC:

SlozkaReferencni hodnota
Energie8400 kJ / 2000 kcal
Tuky70 g
Nasycene mastne kyseliny20 g
Sacharidy260 g
Cukry90 g
Bilkoviny50 g
Sul6 g
Vlaknina25 g
$nutrients_json = get_post_meta($product_id, '_polski_nutrients', true);
$nutrients = json_decode($nutrients_json, true);
if ($nutrients) {
$energy_kcal = $nutrients['energy_kcal'] ?? 0;
$protein = $nutrients['protein'] ?? 0;
}
$nutrients = [
'energy_kj' => 1046,
'energy_kcal' => 250,
'fat' => 9.5,
'saturated_fat' => 3.2,
'carbohydrates' => 31.0,
'sugars' => 5.4,
'protein' => 8.7,
'salt' => 1.2,
'ref_unit' => '100g',
];
update_post_meta($product_id, '_polski_nutrients', wp_json_encode($nutrients));

Sloupec polski_nutrients v CSV by mel obsahovat hodnoty ve formatu JSON:

"Musli owocowe","{""energy_kj"":1590,""energy_kcal"":380,""fat"":8.2,""saturated_fat"":1.5,""carbohydrates"":64.0,""sugars"":22.0,""fibre"":7.5,""protein"":9.8,""salt"":0.05,""ref_unit"":""100g""}"

Uvozovky uvnitr JSON musi byt zdvojene ("") v souboru CSV.

.polski-nutrients__table {
width: 100%;
border-collapse: collapse;
font-size: 0.9em;
}
.polski-nutrients__table th,
.polski-nutrients__table td {
padding: 0.4em 0.8em;
border-bottom: 1px solid #e0e0e0;
text-align: left;
}
.polski-nutrients__sub td:first-child {
padding-left: 1.5em;
font-style: italic;
}
.polski-nutrients__table tfoot td {
font-size: 0.8em;
color: #666;
padding-top: 0.8em;
}
  1. Zkontrolujte, zda je podmodul vyzivovych hodnot aktivovan
  2. Ujistete se, ze produkt ma vyplnene pole _polski_nutrients se spravnym JSON
  3. Overite format JSON - pouzijte validator (napr. jsonlint.com)

Plugin automaticky formatuje cisla v souladu s polskymi regionalnmi nastavenimi (desetinna carka). Pokud vidite tecku, zkontrolujte, zda locale WordPress je nastaven na pl_PL.

Zkontrolujte, zda moznost “Zobrazit % RHP” je aktivovana v nastaveních a zda parametr show_rws v shortcode neni nastaven na false.

Tato stránka slouží pouze k informačním účelům a nepředstavuje právní poradenství. Před implementací se poraďte s právníkem. Polski for WooCommerce je open source software (GPLv2) poskytovaný bez záruky.