From d4c99ba07a62421aadd2034ad48c8f088beb5f70 Mon Sep 17 00:00:00 2001 From: rivanuff <16398970+rivanuff@users.noreply.github.com> Date: Wed, 11 Nov 2026 13:40:27 +0100 Subject: [PATCH] fix: accept non-ascii slugs in rest routes --- src/Base/RestAPI/RestAPIServiceProvider.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Base/RestAPI/RestAPIServiceProvider.php b/src/Base/RestAPI/RestAPIServiceProvider.php index 934fd88..0a7137f 100644 --- a/src/Base/RestAPI/RestAPIServiceProvider.php +++ b/src/Base/RestAPI/RestAPIServiceProvider.php @@ -71,7 +71,8 @@ public function registerRoutes(): void 'permission_callback' => '__return_true', ]); - register_rest_route($this->namespace, 'items/(?P[\w-]+)', [ + // Not [\w-]+: slugs with non-ASCII characters (e.g. "m²") are stored percent-encoded. + register_rest_route($this->namespace, 'items/(?P[^/]+)', [ 'methods' => WP_REST_Server::READABLE, 'callback' => [new Controllers\ItemController($this->plugin), 'getItemBySlug'], 'permission_callback' => '__return_true',