From 5d99a84fadcf18e0768fe261f60b559add0d3266 Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Tue, 18 Nov 2025 10:05:12 +0000 Subject: [PATCH 1/3] Fix "Create Entry" button on collection widget --- src/Widgets/Collection.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Widgets/Collection.php b/src/Widgets/Collection.php index 46e187d174b..a5716463a33 100644 --- a/src/Widgets/Collection.php +++ b/src/Widgets/Collection.php @@ -6,7 +6,9 @@ use Statamic\CP\Column; use Statamic\Facades\Collection as CollectionAPI; use Statamic\Facades\Scope; +use Statamic\Facades\Site; use Statamic\Facades\User; +use function Statamic\trans as __; class Collection extends Widget { @@ -28,7 +30,18 @@ public function component() [$sortColumn, $sortDirection] = $this->parseSort($collection); + $blueprints = $collection + ->entryBlueprints() + ->reject->hidden() + ->map(function ($blueprint) { + return [ + 'handle' => $blueprint->handle(), + 'title' => __($blueprint->title()), + ]; + })->values(); + $blueprint = $collection->entryBlueprint(); + $columns = $blueprint ->columns() ->put('status', Column::make('status') @@ -52,7 +65,10 @@ public function component() 'initialPerPage' => $this->config('limit', 5), 'canCreate' => User::current()->can('create', [EntryContract::class, $collection]) && $collection->hasVisibleEntryBlueprint(), 'createLabel' => $collection->createLabel(), - 'blueprints' => $collection->entryBlueprints()->reject->hidden()->values(), + 'blueprints' => $blueprints->map(fn ($blueprint) => [ + ...$blueprint, + 'createEntryUrl' => cp_route('collections.entries.create', [$collection->handle(), Site::selected(), 'blueprint' => $blueprint['handle']]), + ])->all(), 'listingUrl' => cp_route('collections.show', $collection), ]); } From 3a0d0da36a7c3a0cd232c3f32ae78099ebaed841 Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Tue, 18 Nov 2025 10:48:29 +0000 Subject: [PATCH 2/3] formatting --- src/Widgets/Collection.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Widgets/Collection.php b/src/Widgets/Collection.php index a5716463a33..e74a3109c5a 100644 --- a/src/Widgets/Collection.php +++ b/src/Widgets/Collection.php @@ -8,6 +8,7 @@ use Statamic\Facades\Scope; use Statamic\Facades\Site; use Statamic\Facades\User; + use function Statamic\trans as __; class Collection extends Widget From db1f1765e0981e51e263d92446c25d4acc0197e5 Mon Sep 17 00:00:00 2001 From: Jason Varga Date: Tue, 18 Nov 2025 11:20:00 -0500 Subject: [PATCH 3/3] nitpick --- src/Widgets/Collection.php | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/Widgets/Collection.php b/src/Widgets/Collection.php index e74a3109c5a..3e09dd0270b 100644 --- a/src/Widgets/Collection.php +++ b/src/Widgets/Collection.php @@ -34,12 +34,10 @@ public function component() $blueprints = $collection ->entryBlueprints() ->reject->hidden() - ->map(function ($blueprint) { - return [ - 'handle' => $blueprint->handle(), - 'title' => __($blueprint->title()), - ]; - })->values(); + ->map(fn ($blueprint) => [ + 'handle' => $blueprint->handle(), + 'title' => __($blueprint->title()), + ])->values(); $blueprint = $collection->entryBlueprint();