← back to Hollywood Wallcoverings
CustomCreator configurator: graceful gallery fallback for unknown/retired design ids
8f6f5b97baf1c8bd899ece6c8cdfb43b7cc8d7e1 · 2026-06-21 16:43:06 -0700 · Steve
On /api/product not-found, redirect to /CustomCreator (gallery) instead of a dead 'Could not
load product'. Enables a single-rule SEO deep-redirect for the wallco.ai retirement (every
/design/<id> -> configurator?handle=wallco-<id>; non-cataloged ids land cleanly on the gallery).
Files touched
M customcreator/configure.html
Diff
commit 8f6f5b97baf1c8bd899ece6c8cdfb43b7cc8d7e1
Author: Steve <steve@designerwallcoverings.com>
Date: Sun Jun 21 16:43:06 2026 -0700
CustomCreator configurator: graceful gallery fallback for unknown/retired design ids
On /api/product not-found, redirect to /CustomCreator (gallery) instead of a dead 'Could not
load product'. Enables a single-rule SEO deep-redirect for the wallco.ai retirement (every
/design/<id> -> configurator?handle=wallco-<id>; non-cataloged ids land cleanly on the gallery).
---
customcreator/configure.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/customcreator/configure.html b/customcreator/configure.html
index 813549f..33cbcf9 100644
--- a/customcreator/configure.html
+++ b/customcreator/configure.html
@@ -403,7 +403,7 @@ async function load(handle){
const p=await r.json(); if(p.error)throw new Error(p.error);
render(p);
history.replaceState(null,'',location.pathname+'?handle='+p.sku.toLowerCase());
- }catch(e){ $('title').textContent='Could not load product'; console.error(e); }
+ }catch(e){ console.error(e); location.replace('/CustomCreator'); return; } // unknown/retired design → land on the gallery, never a dead end
$('pdp').classList.remove('loading');
}
async function postCart(mode){
← fae2b73 Custom Creator: self-host design images via id-keyed write-t
·
back to Hollywood Wallcoverings
·
customcreator: reject blank/zero/NaN mural dimensions before 8226967 →