=== Restrictor de Envíos España ===
Contributors: patrolman
Tags: shipping restriction, canarias, ceuta, melilla, codigo postal, checkout, envios, woocommerce, spain
Requires at least: 6.0
Tested up to: 7.1.1
Requires PHP: 7.4
Stable tag: 1.0.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Block WooCommerce checkout by Spanish province — Canary Islands, Ceuta, Melilla, or mainland-Spain-only — with a custom message.

== Description ==

Restrictor de Envíos España lets you block WooCommerce checkout for selected Spanish provinces or regions, or restrict orders to mainland Spain only — with one click and a message you control.

= What it does =

* Block checkout for the Canary Islands, Ceuta, Melilla, or any combination of Spanish provinces you choose.
* One-click shortcut to sell to mainland Spain only, automatically excluding the Canary Islands, Ceuta, Melilla and the Balearic Islands.
* Show your own custom message explaining why the order can't be placed, instead of a generic WooCommerce error.
* Double-checked: the restriction is shown on the page and verified again when the order is placed, so it can't be bypassed by editing the address after the notice appears.
* Compatible with WooCommerce High-Performance Order Storage (HPOS).

= Use cases =

* Sell only to mainland Spain, automatically excluding the Canary Islands, Ceuta, Melilla and the Balearic Islands.
* Block orders from the Canary Islands when your carrier or logistics don't reach them.
* Block orders from Ceuta and Melilla for the same reason.
* Replace a confusing generic checkout error with a clear explanation your customers understand.
* Add a safety net against orders placed from outside your delivery zone, re-checked right before the order is confirmed.

= Works with any carrier =

Restrictor de Envíos España restricts orders based on the customer's address during checkout, before any shipping method is chosen — so it works alongside whatever carrier or shipping plugin you already use, including Correos, SEUR, MRW, GLS, Correos Express or Nacex. There's nothing to configure on the carrier side.

== Installation ==

1. Upload the plugin files to `/wp-content/plugins/restrictor-envios-espana`, or install the plugin through the Plugins screen in WordPress directly.
2. Activate the plugin through the 'Plugins' screen in WordPress.
3. Go to WooCommerce > Settings > Restricción España to choose which provinces or regions to restrict and to write your own custom message.

== Frequently Asked Questions ==

= Does it work with the new block-based WooCommerce checkout? =

Yes, but there's a difference in when the message appears. In the classic checkout, it updates live as the customer edits their address. In the block-based checkout, the message is shown when the page loads with an address already saved on the account; if the customer types a new address without reloading the page, the message won't update live. Either way, the plugin checks the address again when the order is placed, so a restricted order is always blocked, even if the on-page message didn't update in time.

= Is it compatible with High-Performance Order Storage (HPOS)? =

Yes, it's fully compatible with HPOS.

= Can I write my own message for customers? =

Yes. You choose exactly what customers see when their order is blocked, instead of a generic WooCommerce error.

= What happens if a customer changes their address after the message appears? =

The restriction is checked again when the order is placed, so it can't be bypassed by editing the address after the on-page notice shows.

= Can I also exclude specific postal codes, not just provinces? =

The free version restricts by province or region. It doesn't include postal-code-level exclusions.

= Is there a version with more features? =

Yes. Restrictor de Envíos España — Pro adds postal-code exclusions, additional countries besides Spain, and a log of blocked attempts. You can find it at https://patrolman82.gumroad.com/l/ijpffl

= Will this slow down my checkout? =

No. The check runs the same way WooCommerce already validates the order, with no extra requests or noticeable delay.

= Where can I get support? =

Use this plugin's support forum here on WordPress.org.

== Screenshots ==

1. Plugin settings screen inside WooCommerce > Settings > Restricción España: choose the provinces to restrict, use the quick shortcuts, and write your custom checkout message.
2. Example of a blocked checkout: the customer sees your custom message instead of completing the order.

== Changelog ==

= 1.0.3 =
* Added: a settings-page notice about the Pro upgrade, shown only on this plugin's own settings tab and hidden automatically once Pro is active.

= 1.0.2 =
* Changed: plugin renamed to comply with WordPress.org guidelines.
* Changed: minor compatibility and code-quality improvements.

= 1.0.1 =
* Fixed: a conflict that could cause a fatal error on some sites depending on plugin load order.

= 1.0.0 =
* Initial release.
