Linux 软件免费装
Banner图

Spotrebiteľské práva pre WooCommerce

开发者 onlinefotka
更新时间 2026年10月8日 19:55
捐献地址: 去捐款
PHP版本: 7.4 及以上
WordPress版本: 7.1
版权: GPLv2 or later
版权网址: 版权信息

标签

woocommerce gdpr consumer rights withdrawal eu directive

下载

2.5.5 2.1.0 2.5.1 1.4.2 2.2.0 2.3.0 2.3.1 1.4.0 1.7.0 1.3.1 1.4.3 2.5.6 2.7.3 2.8.0 1.4.1 1.6.0 2.2.1 2.2.2 2.4.0 2.5.2 2.6.0 2.6.2 2.6.3 2.6.4 2.6.5 2.7.0 2.7.1 2.0.0 2.6.1 2.7.2 2.7.4

详情介绍:

🇸🇰 Slovenský popis Tento plugin pridáva do vášho WooCommerce e-shopu online formuláre na odstúpenie od zmluvy a reklamácie, plne v súlade s európskou Smernicou EÚ 2023/2673 a slovenským zákonom č. 108/2024 Z. z. o ochrane spotrebiteľa. Pre koho je to určené: Pre slovenských prevádzkovateľov WooCommerce e-shopov, ktorí potrebujú: Hlavné funkcie: Čo plugin NEROBÍ: Tieto kroky rieši prevádzkovateľ manuálne podľa svojich obchodných podmienok. Inštalácia v 3 krokoch:
  1. Aktivujte plugin
  2. Vytvorte 2 stránky a vložte do nich shortcode [withdrawal_form] a [complaint_form]
  3. V Spotrebiteľské práva → Nastavenia zadajte URL týchto stránok + vyplňte IČO/DIČ ak ste firma
🇬🇧 English description This plugin adds online forms for both withdrawal from contract and complaints (reklamácie) to your WooCommerce store, fully compliant with EU Directive 2023/2673 and Slovak Act No. 108/2024 Coll. on consumer protection. Withdrawal from contract Complaints (reklamácie) EU Legal Guarantee (Zákonná záruka EÚ) Displays the harmonised notice on the legal guarantee of conformity as mandated by Commission Implementing Regulation (EU) 2025/1960 (mandatory from 27 September 2026 per Directive 2024/825). Common features WooCommerce compatibility The plugin works with both order-storage systems: Switching is fully automatic. HPOS compatibility is declared via FeaturesUtil — the plugin shows a green compatibility badge in WooCommerce > Settings > Advanced. Legislation The plugin is designed in compliance with: What the plugin does NOT do These steps are handled by the shop owner manually according to their terms and conditions. Usage Withdrawal from contract:
  1. Create a page and insert the shortcode [withdrawal_form]
  2. In Consumer Rights → Settings, enter the URL of that page
  3. Add a link to that page in your site footer
Complaints (reklamácie):
  1. Create a separate page and insert the shortcode [complaint_form]
  2. In Consumer Rights → Settings, enter the URL of that page
  3. Fill in the Seller info section (IČO/DIČ if applicable) — these details appear on the printed protocol
EU Legal Guarantee notice — [zakonna_zaruka] shortcode: The EU Legal Guarantee trigger button is added automatically on Cart and/or Checkout once you enable the module in Settings. For any other location — a custom page, a widget, a page builder block — use the shortcode [zakonna_zaruka]: [zakonna_zaruka] — outputs the trigger button; the modal is automatically included in the page footer No attributes needed. The module must be enabled in Consumer Rights → Settings → EU Legal Guarantee for the shortcode to output anything. Withdrawal link in WooCommerce emails (YayMail / email customizers): Use the [withdrawal_link] shortcode inside any WooCommerce email template (YayMail, Kadence Emails, Email Customizer for WooCommerce, etc.) to insert a pre-filled link to the withdrawal form. The link automatically includes the correct order key so the customer lands on the form with their order pre-filled. [withdrawal_link] — inserts a link with the default label "Withdraw from contract" [withdrawal_link label="Cancel order"] — custom link text [withdrawal_link label="Withdraw" class="btn btn-primary"] — with CSS class(es) on the <a> tag The shortcode only works inside WooCommerce transactional emails (e.g. Order Completed). It reads the current order from the email context automatically. Outside of an email context it returns an empty string. The withdrawal form page URL must be configured in Consumer Rights → Settings.

安装:

  1. Upload the folder odstupenie-od-zmluvy to /wp-content/plugins/
  2. Activate the plugin in WordPress → Plugins
  3. Go to Consumer Rights → Settings (top-level admin menu, shield icon) and fill in:
  4. Shop owner e-mail(s) — comma-separated for multiple recipients (for notifications)
  5. URL of the withdrawal form page
  6. URL of the complaint form page
  7. Seller info (IČO, DIČ, IČ DPH) if you are a business
  8. Contact info for fallback (optional)
  9. Create a page for withdrawal with the shortcode [withdrawal_form]
  10. Create a page for complaints with the shortcode [complaint_form]
  11. Enter both URLs in the plugin settings
EU Legal Guarantee module (v2.8.0+):
  1. Scroll to the EU Legal Guarantee (Zákonná záruka EÚ) card in Settings and tick Activate EU Legal Guarantee module
  2. Select where to display it: Cart and/or Checkout are recommended (enabled by default); Product page and Site footer are optional
  3. No additional pages or shortcodes are required — the module adds a trigger button automatically on the selected pages
  4. To place the notice somewhere custom (e.g. inside a page builder block), use the shortcode [zakonna_zaruka]
No extra plugins, libraries or server requirements needed for the EU Legal Guarantee module. The official notice images for SK, CS, DE, HU, PL and EN are bundled with the plugin. If your site uses a language other than those six, the English image is used as fallback.

屏幕截图:

  • "Withdraw from contract here" button in My Account > Orders
  • Complaint form with drag &amp; drop photo upload
  • Admin complaints list with filter, search and pagination
  • Complaint detail page with Reklamačný protokol (Part 2)
  • Printable A4 complaint protocol (browser-native PDF)
  • Plugin settings (Consumer Rights → Settings)
  • Customer e-mail — confirmation with submission date and time

升级注意事项:

2.8.0 New: EU Legal Guarantee module — displays the harmonised notice required by Regulation (EU) 2025/1960 (mandatory from 27 September 2026). Enable in Consumer Rights → Settings → EU Legal Guarantee. No new pages or shortcodes required; the trigger button appears automatically on Cart and Checkout. Shortcode [zakonna_zaruka] available for custom placement. 2.1.0 Adds data retention auto-delete, GDPR personal data export/erase tools, link from complaints to matching WooCommerce orders, a meta box on the WC order edit page showing complaints for that order, and a dashboard widget with quick stats and links. 2.0.0 Major release. Plugin renamed to "Spotrebiteľské práva pre WooCommerce" and now covers BOTH withdrawal from contract AND a full online complaint (reklamácia) workflow. New top-level admin menu with 3 sections. Includes photo uploads, printable A4 protocol, seller info settings, WP Cron deadline reminders, admin complaint protocol fill, status pipeline, filter/search/pagination, internal notes, and delete action. No breaking changes — existing withdrawal functionality is preserved. 1.7.0 Adds multiple admin notification e-mails (comma-separated), updates Slovak legal citation to Act No. 108/2024 Coll., and bumps WordPress / WooCommerce compatibility. 1.6.0 Adds a new admin field for custom warnings/notices at the top of the form. Useful for displaying product-specific exceptions from the withdrawal right. 1.5.0 Adds Polish translation and clickable Privacy Policy link in the GDPR checkbox. Make sure your WordPress Privacy Policy page is set in Settings → Privacy. 1.4.3 Plugin renamed to "Odstupenie od zmluvy pre WooCommerce" (Slovak). No functional changes. 1.4.2 Important fix: includes compiled .mo translation files. Translations (SK/CZ/HU/DE/EN) now actually load. Recommended update for all users. 1.4.1 Adds new English shortcode [withdrawal_form]. Old shortcode [odstupenie_od_zmluvy] continues to work — no action required for existing users. 1.4.0 Major update: full multilingual support added. Plugin now includes English, Slovak, Czech, Hungarian and German translations. Source language changed to English for WordPress.org translation platform compatibility. 1.3.1 Added full HPOS compatibility (works with both HPOS and legacy WC) and order-number existence check. Recommended update for all users. 1.3.0 Added automatic 14-day deadline check. Form is automatically blocked after expiry. Recommended update before 19 June 2026. 1.2.0 Important update: security fixes (IDOR, rate limiting) and legally correct button wording per EU Directive 2023/2673. Recommended before 19 June 2026.

常见问题:

EU Legal Guarantee (Zákonná záruka EÚ)

What is the EU Legal Guarantee module?

It displays the harmonised notice on the legal guarantee of conformity required by Commission Implementing Regulation (EU) 2025/1960, which became mandatory on 27 September 2026 under EU Directive 2024/825. The notice informs customers that they are entitled to at least 2 years of legal guarantee coverage on goods.

Is it mandatory for my shop?

Yes, if you sell goods to consumers in the EU. The notice must be displayed on your webshop from 27 September 2026. The regulation applies to all online retailers selling physical goods to EU consumers, regardless of the country of establishment.

How does the trigger + modal work?

A button (styled to match your WooCommerce theme) appears at the configured location(s) — e.g. below the cart total and above the place-order button on checkout. Clicking it opens a modal overlay with the official harmonised notice image for the current site language. A download link to the EUR-Lex Official Journal PDF is included in the modal.

Where exactly is the notice shown?

You choose in Consumer Rights → Settings → EU Legal Guarantee: Cart (below order total), Checkout (above place order button), Product page (below Add to cart), or Site footer. Cart and Checkout are enabled by default; the others are off by default. You can also place it anywhere using the [zakonna_zaruka] shortcode.

Does it work with the WooCommerce block-based cart and checkout?

Yes. The module injects the trigger via the render_block filter for woocommerce/cart-totals-block and woocommerce/checkout-actions-block, with no JavaScript build step required.

Can I use my own notice image?

Yes. In Settings → Custom notice image, upload your own image via the Media Library. Leave it blank to use the built-in official WebP image that matches the site language (SK / CS / DE / HU / PL / EN; falls back to EN for other languages).

Can I change the trigger button text?

Yes. In Settings → Trigger text, enter your preferred text. Leave blank to use the default translated text ("Legal guarantee – minimum 2 years" in English, "Zákonná záruka – minimálne 2 roky" in Slovak, etc.).

I want to place the notice inside a page builder block or a sidebar widget — is that possible?

Yes. Use the shortcode [zakonna_zaruka] on any page, post, or widget that supports shortcodes. It outputs the same trigger button and the modal is included in the footer automatically.

Does it slow down the page?

No. The module's CSS and JS are enqueued only on pages where the trigger is displayed. The output is static HTML — no AJAX calls on page load — which means it is fully compatible with page caches (LiteSpeed, WP Rocket, W3 Total Cache, etc.).

General

Where can I find the plugin in admin?

In a dedicated top-level menu "Spotrebiteľské práva" (Consumer Rights) with a shield icon, located right below WooCommerce. It has 3 submenus: Withdrawals from contract, Complaints (reklamácie), and Settings.

Where can I find all submitted requests?

In the admin: Consumer Rights → Withdrawals from contract for withdrawals, or Consumer Rights → Complaints for complaints (reklamácie).

Is the plugin compatible with HPOS (High Performance Order Storage)?

Yes. The plugin is fully compatible with both HPOS and legacy WooCommerce. Switching is automatic — no configuration required. HPOS compatibility is declared via FeaturesUtil and shown as a green badge in WooCommerce > Settings > Advanced.

What languages does the plugin support?

English (en_US), Slovak (sk_SK), Czech (cs_CZ), Hungarian (hu_HU), German (de_DE), Polish (pl_PL). The language is auto-detected from your WordPress Site Language setting (Settings → General).

Can I send notifications to multiple e-mail addresses?

Yes. In Consumer Rights → Settings, enter multiple addresses in the "Shop owner e-mail(s)" field, separated by commas (e.g. owner@shop.com, support@shop.com). Invalid e-mails are silently ignored.

Will the plugin slow down my site?

No. The plugin uses object caching (wp_cache_*) for admin list queries, rate-limiting via WP transients, and only loads its JS/CSS on pages where the shortcode is used. HPOS-native queries are used when HPOS is enabled.

Withdrawal from contract

Is the plugin compliant with EU Directive 2023/2673?

Yes. The entry button uses the exact wording from Article 1, the form submit button uses the exact wording from Article 3, and the customer receives a confirmation e-mail with date and time of submission per Article 4 (durable medium).

Where does the "Withdraw from contract here" button appear?

On every order in My Account > Orders, provided the 14-day period has not expired. After the period, the button is hidden automatically. The URL of the form page must be set in plugin settings.

Can I add a withdrawal link directly inside a WooCommerce order e-mail?

Yes. Place the [withdrawal_link] shortcode in any WooCommerce email template using an email customizer plugin (YayMail, Kadence Emails, Email Customizer for WooCommerce, etc.). The shortcode reads the current order from the email context and outputs an <a> link that pre-fills the withdrawal form for that specific order. Attributes: label (link text, default "Withdraw from contract") and class (CSS class on the link). The withdrawal form page URL must be set in Consumer Rights → Settings for the shortcode to work.

How does the 14-day deadline check work?

The period is counted from the delivery date (order status "Completed" / date_completed). If the order is not completed yet, the creation date is used. The form shows a coloured banner with days remaining. After expiry, the form is blocked both visually and on the server.

What if a guest customer changed their e-mail and no longer has access to it?

The plugin supports fallback verification by billing postcode. The customer enters the order number plus postcode — the system verifies the order without the original e-mail. If they don't know the postcode either, they must contact the shop owner directly (the contact is configurable in admin).

Complaints (reklamácie)

Do complaints (reklamácie) have a 14-day deadline like withdrawals?

No. Complaints (defective product claims) are governed by the warranty period, not the 14-day withdrawal period. The plugin tracks the 30-day legal deadline within which the shop owner must respond per Act No. 108/2024 Coll. A reminder e-mail is sent to the admin 5 days before the deadline expires.

How does the customer submit a complaint?

By filling in the form on the page where you placed the [complaint_form] shortcode. Logged-in customers can pick the order from a dropdown (auto-fills brand, model, sale date, order number, invoice). Guests fill all fields manually. Photos of the defect are optional.

Are the manufacturer and product model required fields?

No. Brand and model are optional — some products (e.g. custom prints) do not have a clear manufacturer label. The mandatory fields are: name, phone, e-mail, IBAN, sale date, invoice number, defect description, and GDPR consent.

How do I process a complaint as a shop owner?

Open Consumer Rights → Complaints, click the complaint, and fill in the Reklamačný protokol (Part 2) on the right side: date received, date resolved, resolution (exchange / refund / rejected), and any extra details. Save the protocol. Optionally send a status update e-mail to the customer.

Where are uploaded complaint photos stored?

In /wp-content/uploads/oodz-reklamacie/YYYY/MM/. The folder is protected against PHP execution via .htaccess and filenames have a random hash prefix to prevent URL guessing.

How do I configure photo upload limits?

In Consumer Rights → Settings → Complaints: set max number of photos per complaint (0 = disable upload entirely) and max size per photo in MB. Defaults are 5 and 5 MB respectively. The plugin verifies real MIME types (JPG, PNG, WEBP, HEIC) — not just file extensions.

Can I print the complaint protocol as a PDF?

Yes. Open the complaint detail page and click 🖨 Print protocol. A printable A4 view opens with Part 1 (buyer-filled form), Part 2 (Reklamačný protokol), legal text (12-month rule, expert assessment, 14-day reimbursement), and signature areas. Use your browser's Ctrl+P → "Save as PDF" — no third-party PDF library bundled.

Can I take internal notes that the customer does not see?

Yes. The complaint detail page has an Internal notes field with a yellow "PRIVATE" badge. Notes are visible only to admins and are NOT included in the printed protocol, customer e-mails, or status update e-mails.

Can I delete a complaint?

Yes. Both the complaint list (🗑 row action) and the detail page (red "🗑 Delete" button in the title bar) offer a delete action. A confirmation dialog is shown. Deletion is permanent and removes both the DB record and all attached photo files from disk.

What if my Seller info is wrong on the printed protocol?

In Consumer Rights → Settings → Seller info, you can override the company name and add legal info (IČO, DIČ, IČ DPH), phone, and a correspondence address different from your main store address. By default, the company name and address come from WooCommerce → Settings → General → Store Address.

更新日志:

2.8.0 2.7.4 2.7.3 2.7.2 2.7.1 2.7.0 2.6.4 2.6.1 2.6.0 2.5.7 2.5.6 2.5.5 2.5.4 2.5.3 2.5.2 2.5.1 2.4.0 2.3.1 2.3.0 New: GDPR checkbox is now optional, Polylang/WPML support for admin texts, multilingual locale fix. 2.2.2 Bugfix: partial withdrawal — checkboxes were not sent to the server. 2.2.1 Bugfix: WC emails not sent from AJAX submit handlers. 2.2.0 New: WooCommerce email integration, product-checkbox partial withdrawal, minified assets, smarter dashboard widget. 2.1.0 New: data retention, GDPR tools, WC order linking, dashboard widget. 2.0.0 Major release — full complaint (reklamácia) functionality, dedicated admin menu, brand redesign. Withdrawal form: Plugin renamed to "Spotrebiteľské práva pre WooCommerce" (Consumer Rights for WooCommerce) — now covers both withdrawal from contract AND complaints under a single product. Complaints (reklamácie) — entirely new functionality: Admin — complaint management: Print / PDF: E-mails: Settings — new "Údaje predávajúceho" section (used in form header + printed protocol): UI / readability: Translations: Backward compatibility: 1.7.0 1.6.0 1.5.0 1.4.3 1.4.2 1.4.1 1.4.0 1.3.1 1.3.0 1.2.0 1.1.0 1.0.0