Deprecated: Return type of Gravity_Forms\Gravity_Forms\External_API\GF_API_Response::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/external-api/class-gf-api-response.php on line 179
Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/addon/class-gf-addon.php on line 5733
Deprecated: Return type of GF_Field::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 93
Deprecated: Return type of GF_Field::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 99
Deprecated: Return type of GF_Field::offsetSet($offset, $data) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 108
Deprecated: Return type of GF_Field::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/fields/class-gf-field.php on line 117
Deprecated: Gravity_Forms\Gravity_Forms\License\GF_License_API_Response implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in /home/wirralki/staging_html/wp-content/plugins/gravityforms/includes/license/class-gf-license-api-response.php on line 17
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 22
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 28
Deprecated: Return type of Yoast\WP\Lib\Model::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/lib/model.php on line 560
Deprecated: Return type of Yoast\WP\Lib\ORM::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/lib/orm.php on line 2456
Deprecated: Return type of Yoast\WP\Lib\ORM::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/lib/orm.php on line 2467
Deprecated: Return type of Yoast\WP\Lib\ORM::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/lib/orm.php on line 2477
Deprecated: Return type of Yoast\WP\Lib\ORM::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/lib/orm.php on line 2489
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '9' AND `object_type` = 'post' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '9' AND `object_type` = 'post' LIMIT 1
Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/builders/indexable-post-builder.php on line 114
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` = '1' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` = '1' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` IS NULL LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` IS NULL LIMIT 1
Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 164
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable_hierarchy' doesn't exist] SELECT `indexable_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `ancestor_id` = '0'
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable_hierarchy' doesn't exist] SELECT `indexable_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `ancestor_id` = '0'
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1
Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 164
Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 164
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` = 'attachment' AND `post_status` = 'inherit' AND `post_parent` = '9' AND `has_public_posts` IS NOT NULL
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` = 'attachment' AND `post_status` = 'inherit' AND `post_parent` = '9' AND `has_public_posts` IS NOT NULL
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'home-page' LIMIT 1
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable' doesn't exist] SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'home-page' LIMIT 1
Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 164
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable_hierarchy' doesn't exist] SELECT `ancestor_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = '0' ORDER BY `depth` DESC
WordPress database error: [Table 'wirralki_staging.yoast_wp_seo_models_indexable_hierarchy' doesn't exist] SELECT `ancestor_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = '0' ORDER BY `depth` DESC
Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176
Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176
Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176
Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /home/wirralki/staging_html/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176
Deprecated: Return type of Spatie\WordPressRay\Ramsey\Uuid\Uuid::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/wirralki/staging_html/wp-content/plugins/spatie-ray/vendor/ramsey/uuid/src/Uuid.php on line 159
Fitted kitchens bespoke to you.
Luxury, bespoke kitchens designed to fit your home by our expert curators.
We would like to thank Kevin & his team for a fantastic job on our kitchen, Harry for helping us with our design and Andy & Mike for their skills work and patience with the many problems in our room which they solved! Kitchen is magnificent! Andy & Mike you are Superstars! Thank you!
T T
Great service from planning stage to installation. Unfortunately we chose our kitchen just before lockdown but Kevin kept us posted throughout with our revised fitting date, so we didn’t feel forgotten. Overall we’re more than happy with the finished result. Craig the fitter was very professional and did an amazing job. Would have no hesitation in recommending Wirral Kitchens.
Ken Taylor
Fantastic pair of fitters Mike and Andy.. From start to finish couldnt fault them.
The workmanship attitude and friendliness was above and beyond.
Would recommend Wirral Kitchens and in particular these lads
Ruth Daniel
Amazing job 10/10
The helpful kitchen company specialists
At WirralKitchens.com we have developed a superb range of kitchens to suit everyone’s taste. We have an excellent range of solid wood traditional kitchens as well as high-gloss modern and contemporary kitchens.
We are manufacturers and in many instances tailor make our fitted kitchens to your requirements, using only the best components available. Take a look at our superb range of painted timber and modern matt doors.
We genuinely have over 20 years’ experience and when we say we are kitchen specialists, we mean that. A lot of the finishes we can offer are not available anywhere else. The starting point is with a consultation, a full measure and then a 3D Design. At this point we can discuss any changes, so we can help you every step of the way.
Are you interested? Arrange a consultation please phone or enquire