From dcd98416bf488125fd4001093de244fbec14bdee Mon Sep 17 00:00:00 2001 From: ella Date: Wed, 29 Oct 2025 16:35:37 +0100 Subject: [PATCH 1/2] Template activation: non-database templates cannot be trashed/edited --- packages/fields/src/actions/rename-post.tsx | 5 +++++ packages/fields/src/actions/trash-post.tsx | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/packages/fields/src/actions/rename-post.tsx b/packages/fields/src/actions/rename-post.tsx index ece201112419f9..5aabfa139a107b 100644 --- a/packages/fields/src/actions/rename-post.tsx +++ b/packages/fields/src/actions/rename-post.tsx @@ -35,6 +35,11 @@ const renamePost: Action< PostWithPermissions > = { if ( post.status === 'trash' ) { return false; } + + if ( post.type === 'wp_template' && typeof post.id === 'string' ) { + return false; + } + // Templates, template parts and patterns have special checks for renaming. if ( ! [ diff --git a/packages/fields/src/actions/trash-post.tsx b/packages/fields/src/actions/trash-post.tsx index d9f7e561306713..6fbbda11618f3b 100644 --- a/packages/fields/src/actions/trash-post.tsx +++ b/packages/fields/src/actions/trash-post.tsx @@ -31,6 +31,11 @@ const trashPost: Action< PostWithPermissions > = { return false; } + // Non-database template cannot be trashed. + if ( item.type === 'wp_template' && typeof item.id === 'string' ) { + return false; + } + return ( !! item.status && ! [ 'auto-draft', 'trash' ].includes( item.status ) && From 0af4fd3a17a4a9bcc2a9912b6c99da464a6b1c4d Mon Sep 17 00:00:00 2001 From: ella Date: Wed, 29 Oct 2025 16:39:01 +0100 Subject: [PATCH 2/2] Add comment --- packages/fields/src/actions/rename-post.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/fields/src/actions/rename-post.tsx b/packages/fields/src/actions/rename-post.tsx index 5aabfa139a107b..2dcb58fd6eb526 100644 --- a/packages/fields/src/actions/rename-post.tsx +++ b/packages/fields/src/actions/rename-post.tsx @@ -36,6 +36,7 @@ const renamePost: Action< PostWithPermissions > = { return false; } + // Non-database template cannot be edited. if ( post.type === 'wp_template' && typeof post.id === 'string' ) { return false; }