Elementor “Default Kit Missing” after programmatic site cloning
-
When cloning a WordPress site programmatically (multisite or single-site), Elementor pages and the Elementor Kit are copied correctly at the database level, but Elementor shows:
“Your site doesn’t have a default kit. Please create one.”
This happens even though:
elementor_active_kitoption exists and points to a validelementor_librarypost- The kit post is published
_elementor_dataexists on the kit_elementor_edit_mode = builder_elementor_template_type = kit
Frontend may partially render, but the Elementor editor shows a black screen until the kit is manually recreated.Steps to Reproduce
- Programmatically clone a site:
- Copy posts/pages
- Copy Elementor meta (
_elementor_data,_elementor_version, etc.) - Copy Elementor Kit (
elementor_librarypost)
- Set
elementor_active_kitto the new kit ID - Attempt to edit a page with Elementor
Expected Result
Elementor should recognize the existing kit and load the editor normally.Actual Result
Elementor shows “Default Kit Missing” and requires manual recreation, even though the kit exists and is valid.Key Finding
Elementor does not recognize a copied Kit unless it is explicitly registered via the Kits Manager.
Calling only:
$document = \Elementor\Plugin::$instance->documents->get( $kit_id ); $document->save();is not sufficient.
The issue is resolved only when the kit is explicitly activated using:
\Elementor\Plugin::$instance->kits_manager->set_active_kit( $kit_id );This requirement is not documented and is easy to miss for importers, demo provisioners, and migration tools.Suggested Improvement
Either:
- Automatically register a valid kit when
elementor_active_kitpoints to an existing kit post
OR - Document that
kits_manager->set_active_kit()is required for programmatic setups.
You must be logged in to reply to this topic.