| 开发者 | motylanogha |
|---|---|
| 更新时间 | 2026年9月15日 00:42 |
| PHP版本: | 8.1 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
Yes. Polski for WooCommerce is a free WooCommerce plugin for Polish online shops and is distributed as open source under GPLv2 or later.
Polski is intended for WooCommerce stores selling in Poland or to Polish customers. It is especially useful when a shop needs modules for GPSR, Omnibus, GDPR, VAT ID (NIP), the right of withdrawal, KSeF and product data.
Yes. Polski adds GPSR-related product fields, including manufacturer, importer and EU responsible person data, product identifiers, safety warnings and instructions. The data can be filled in the product editor and in bulk via CSV import or export.
Yes. The GPSR module can store and display the manufacturer, importer and EU responsible person data on the WooCommerce product page. Visibility depends on the module settings and the data filled in for the product.
Yes. The Omnibus module records price history and can display the lowest price from the last 30 days on discounted products. You can adjust the display settings in the module panel.
Yes. The plugin lets you add configurable consent checkboxes at order, registration and reviews, and keep a consent log with date, context and technical audit information.
Yes. Polski can add checkboxes for the terms, privacy policy, withdrawal information, consent for digital content, marketing consent, delivery notifications and a review reminder.
Yes. Polski can add right-of-withdrawal handling from the customer account, with request confirmation, a request log and e-mail messages. This helps organise the returns process in WooCommerce.
Yes. Polski includes features and hooks related to the Polish VAT ID (NIP), including detection of orders that may require invoice or KSeF handling. Field availability and behaviour depend on the enabled modules.
Polski is not a complete system for sending invoices to KSeF, but it adds mechanisms ready for integrations: flagging orders by VAT ID, a KSeF status column and hooks for invoicing plugins and custom integrations.
Polski provides data, flags and hooks useful for invoicing and KSeF, but it does not replace a full invoicing plugin or accounting system. For automatic invoicing, use a dedicated invoicing integration.
Yes. Polski supports the classic checkout as well as the block-based WooCommerce cart and checkout.
Yes. Polski declares compatibility with WooCommerce HPOS, that is High-Performance Order Storage / Custom Order Tables.
Yes. The plugin lets you show unit prices, for example per kg, litre, metre, piece or a custom unit.
Yes. Polski includes modules useful for grocery shops, including composition, nutrition values, allergens, origin, distributor and additional product labelling fields.
Yes. The plugin includes DSA tools, including point-of-contact settings, an illegal-content report form shortcode, a report-handling panel and e-mail notifications.
Yes. The storefront modules include a wishlist, product comparison, quick view, back-in-stock notifications, AJAX filters, AJAX search and product badges.
Yes. Polski is modular, so you can enable only the features you need, for example GPSR, Omnibus, GDPR, returns, VAT ID, DSA or storefront modules.
Yes. Polski extends the WooCommerce CSV import and export with selected product data, including GPSR fields and other product information.
Yes. The plugin provides shortcodes for selected modules, including GPSR information, withdrawal forms, DSA reports, complaint templates and shop messages.
No. Polski provides technical modules for WooCommerce, but it is not legal advice and does not guarantee that your shop is compliant. Your shop configuration, terms and obligations always have to be verified for your specific business.
Polski follows security practices relevant to CRA readiness: updates are delivered through the official WordPress.org channel, vulnerabilities can be reported under a coordinated disclosure policy, the code uses standard WordPress security mechanisms, and external services are described in this readme. This is not a declaration of legal compliance.
For day-to-day support use the WordPress.org forum. Technical bugs and feature requests can also be reported in the GitHub repository.
Yes. The admin panel includes a simple feedback form that stores messages locally in WordPress. Do not enter passwords, license keys or customer personal data there.
Deactivating the plugin keeps your settings and stored data. Uninstalling removes the plugin files. Plugin data is removed only when you enable the "remove data on uninstall" setting.
polski/order_export/batch_size, the cleanup batch via polski/doi/cleanup_batch_size.post__in, which it does not accept: it overwrites that argument with its own empty include default and drops it, leaving the limit to hand back the newest products instead. On a catalogue of 450 products that export wrote 200 rows and lost 250. Products are now hydrated by include, two unit tests walk the export over a catalogue larger than one batch, and both of them run in the release preflight, next to a check that fails when a function in the source both queries products and mentions post__in. That check reads the source as PHP tokens, so it sees a call to wc_get_products() and a new WC_Product_Query, each written plain or with a leading backslash; it does not see a query reached through a variable function name, a callable string or a wrapper of our own, and it does not see arguments assembled in a different function than the call.[polski_wishlist] and [polski_compare] rendered unstyled with dead buttons on an ordinary page. The assets loaded only on shop, product, product category and My Account pages, so a merchant who put either shortcode on a page of their own got markup with no stylesheet and no script behind it.sodiumContent, and salt is sodium multiplied by 2.5, but the two were mapped straight across, so a product labelled 2.5 g of salt told Google it contained 2.5 g of sodium. The figure is now converted before it is published.polski_unit_price key nothing reads. The label is translated and the private key is gone.slug:value|slug:value syntax. Values typed here and values imported from CSV end up identical, so an export still round-trips.sanitize_text_field over each value before choosing a sanitiser, and that function folds newlines into spaces, so a GPSR manufacturer address, a list of safety warnings, repair information and the substantiation of an environmental claim were all stored as one long line.plugins_loaded, which has already fired by the time the plugin boots. Its signals had no listeners in either the free or the paid plugin. Nothing used it and nothing changes; the code is gone rather than left to read as a working feature. A build-time check now covers this shape across the whole plugin family, so a hook that can never fire cannot ship again unnoticed.polski/nip_required), so a paid rule that marks a product as needing the buyer's VAT ID on the receipt can make the field mandatory for that order. Enforced on both the classic and the block checkout, since the block field is registered before a cart exists and its own required flag cannot see one.polski_gtin as a CSV import and export column. The meta key behind it was read in six places and written by nothing, and the documentation already promised a column for it.polski/modules and polski/module_defaults filters, so an add-on can put its own cards on the Modules screen instead of gating a feature on a switch that exists nowhere.polski/gpsr/data filter, so the values shown for a product can be supplied from elsewhere. Plogins Polski PRO uses it for reusable responsibility profiles.