{"id":290653,"date":"2026-03-23T15:58:00","date_gmt":"2026-03-23T15:58:00","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/winelabel-eu\/"},"modified":"2026-03-23T15:57:26","modified_gmt":"2026-03-23T15:57:26","slug":"winelabel-eu","status":"publish","type":"plugin","link":"https:\/\/fao.wordpress.org\/plugins\/winelabel-eu\/","author":23466832,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.6","stable_tag":"1.0.6","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"WineLabel EU","header_author":"Edoardo Biasini","header_description":"EU Digital Wine Label \u2014 regulation-compliant digital labels (Reg. EU 2021\/2117) with ingredients, nutritional values, and waste sorting. Works with or without WooCommerce.","assets_banners_color":"431322","last_updated":"2026-03-23 15:57:26","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/winelabel.net","header_author_uri":"https:\/\/edoardobiasini.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":47,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.6":{"tag":"1.0.6","author":"milksamsa","date":"2026-03-23 15:57:26"}},"upgrade_notice":{"1.0.6":"<p>Streamlined for WordPress.org: removed pro-only code, improved compliance with plugin guidelines.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3489211,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3489211,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3489211,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3489211,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.6"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Wine editor with digital label fields enabled","2":"Vintage editor \u2014 ingredients, nutritional values, and waste sorting","3":"Frontend digital label page (mobile view)","4":"Settings page with WooCommerce integration toggle","5":"Usage dashboard showing vintage count"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[258449,245797,1373,5631,286],"plugin_category":[45],"plugin_contributors":[258450],"plugin_business_model":[],"class_list":["post-290653","plugin","type-plugin","status-publish","hentry","plugin_tags-digital-label","plugin_tags-eu-regulation","plugin_tags-qr-code","plugin_tags-wine","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-milksamsa","plugin_committers-milksamsa"],"banners":{"banner":"https:\/\/ps.w.org\/winelabel-eu\/assets\/banner-772x250.png?rev=3489211","banner_2x":"https:\/\/ps.w.org\/winelabel-eu\/assets\/banner-1544x500.png?rev=3489211","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/winelabel-eu\/assets\/icon-128x128.png?rev=3489211","icon_2x":"https:\/\/ps.w.org\/winelabel-eu\/assets\/icon-256x256.png?rev=3489211","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>WineLabel EU helps wineries comply with <strong>EU Regulation 2021\/2117<\/strong> (Art. 119 of Reg. EU 1308\/2013) by generating digital wine labels accessible via QR code.<\/p>\n\n<p>Each label includes:<\/p>\n\n<ul>\n<li><strong>Ingredients<\/strong> \u2014 raw materials, acidity regulators, stabilizers, antioxidants, sulfite declaration<\/li>\n<li><strong>Nutritional values<\/strong> \u2014 calories, fat, carbohydrates, sugars, protein, salt, alcohol content<\/li>\n<li><strong>Waste sorting<\/strong> \u2014 packaging components with material codes and collection instructions<\/li>\n<\/ul>\n\n<h4>How it works<\/h4>\n\n<ol>\n<li>Add a wine using the built-in Wines manager (or attach labels to WooCommerce products)<\/li>\n<li>Enable the digital label and add one or more vintages<\/li>\n<li>Fill in ingredients, nutritional values, and waste sorting for each vintage<\/li>\n<li>Share the auto-generated URL or print the QR code<\/li>\n<\/ol>\n\n<p>Labels are served as clean, standalone HTML pages \u2014 no theme interference, no cookies, no tracking \u2014 exactly as EU regulations require.<\/p>\n\n<h4>WooCommerce Integration<\/h4>\n\n<p>WineLabel EU works standalone with its own Wines post type. If WooCommerce is installed, you can optionally attach digital labels directly to your existing products. Toggle this in Settings.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Unlimited vintages<\/li>\n<li>Full ingredient, nutritional, and waste sorting fields<\/li>\n<li>Clean, regulation-compliant label pages<\/li>\n<li>Works with or without WooCommerce<\/li>\n<li>Label index page listing all your wines<\/li>\n<li>No cookies, no JavaScript, no tracking on label pages<\/li>\n<\/ul>\n\n<h4>WineLabel EU Pro<\/h4>\n\n<p>Need more? <a href=\"https:\/\/winelabel.net\">WineLabel EU Pro<\/a> adds:<\/p>\n\n<ul>\n<li><strong>Bilingual labels<\/strong> \u2014 English + a configurable second language (Italian, German, French, Spanish, etc.)<\/li>\n<li><strong>Downloadable QR code PDFs<\/strong> \u2014 vector QR codes ready for print<\/li>\n<li><strong>Custom base URL<\/strong> \u2014 use your own domain in QR codes<\/li>\n<li><strong>Customizable translations<\/strong> \u2014 full control over every label string<\/li>\n<li><strong>Remove footer branding<\/strong> \u2014 clean labels with your name only<\/li>\n<li><strong>Duplicate vintages<\/strong> \u2014 clone a vintage with one click to save time<\/li>\n<li><strong>Priority support<\/strong><\/li>\n<\/ul>\n\n<p><a href=\"https:\/\/winelabel.net\">Learn more and upgrade at winelabel.net<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>winelabel-eu<\/code> folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin through the Plugins menu<\/li>\n<li>Go to <strong>WineLabel EU \u2192 Settings<\/strong> to configure<\/li>\n<li>Add wines via <strong>WineLabel EU \u2192 Wines<\/strong> (or WooCommerce Products if enabled)<\/li>\n<li>Create vintages and fill in label data<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20eu%20regulation%20does%20this%20address%3F\"><h3>What EU regulation does this address?<\/h3><\/dt>\n<dd><p>EU Regulation 2021\/2117, which amended Regulation 1308\/2013 (Art. 119). Since December 2023, wines sold in the EU must provide digital access to ingredients, nutritional information, and recycling instructions.<\/p><\/dd>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>No. WineLabel EU includes a built-in Wines manager. WooCommerce integration is optional and can be enabled in Settings if you want to attach labels to existing products.<\/p><\/dd>\n<dt id=\"what%20does%20the%20label%20page%20look%20like%3F\"><h3>What does the label page look like?<\/h3><\/dt>\n<dd><p>Labels are served as clean HTML pages with no theme styles, no cookies, and no JavaScript \u2014 just the regulatory information. This ensures compliance and fast loading on any device.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20in%20languages%20other%20than%20english%3F\"><h3>Can I use this in languages other than English?<\/h3><\/dt>\n<dd><p>The free version displays labels in English. <a href=\"https:\/\/winelabel.net\">WineLabel EU Pro<\/a> adds bilingual support with a configurable second language and fully customizable label strings.<\/p><\/dd>\n<dt id=\"where%20can%20i%20get%20support%3F\"><h3>Where can I get support?<\/h3><\/dt>\n<dd><p>For bug reports and feature requests, visit <a href=\"https:\/\/github.com\/edoardobiasini\/winelabel-eu\">our GitHub repository<\/a>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Remove pro-only code for WordPress.org compliance<\/li>\n<li>Extract inline CSS to external stylesheet (assets\/label.css)<\/li>\n<li>Replace inline admin scripts\/styles with wp_enqueue equivalents<\/li>\n<li>Simplify settings page (WooCommerce toggle + data removal only)<\/li>\n<li>English-only label output<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Add PHPCS nonce verification and direct DB query annotations<\/li>\n<li>Exclude .claude and .wrangler directories from build artifacts<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Support plain permalinks (query-param fallback for all label URLs)<\/li>\n<li>Auto-flush rewrite rules on plugin activation<\/li>\n<li>Settings page reflects correct URL format for current permalink structure<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fix license activation issues<\/li>\n<li>Add debug logging when WP_DEBUG is enabled<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed fatal error on lite version (PHP function hoisting)<\/li>\n<li>GPL-2.0-or-later license for WordPress.org compatibility<\/li>\n<li>Added readme.txt for WordPress.org plugin directory<\/li>\n<li>Improved security: proper escaping, wp_unslash, wp_safe_redirect throughout<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added WooCommerce integration as opt-in toggle (standalone Wines manager by default)<\/li>\n<li>Improved lite version compatibility (PHP 7.4+)<\/li>\n<li>Fixed Carbon Fields container naming<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Ingredients, nutritional values, and waste sorting fields<\/li>\n<li>Multi-vintage support with per-vintage data<\/li>\n<li>Clean standalone HTML label pages<\/li>\n<li>WooCommerce integration (optional)<\/li>\n<\/ul>","raw_excerpt":"EU-regulation-compliant digital wine labels with ingredients, nutritional values, and waste sorting information.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/290653","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=290653"}],"author":[{"embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/milksamsa"}],"wp:attachment":[{"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=290653"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=290653"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=290653"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=290653"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=290653"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fao.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=290653"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}