Website import
With the import you take over an existing website – from Webflow, WordPress, Squarespace or static HTML – including page tree, HTML, CSS, JavaScript and media.
Process
1. Analyze. Import → enter the URL → Analyze. The CMS reads robots.txt and the sitemap. If there is no sitemap, it follows the links. Optional: Also follow all links finds pages that aren’t in the sitemap.
2. Select.
- Target: Where the source’s home page is imported to. Suggested is a website whose domain matches the source or into which something has already been imported from there; an empty, untouched website; otherwise Create new website (always on a fresh installation without pages) – the source then becomes a separate website with its own page tree; name and domains are prefilled. For a test run, an empty subpage works too.
- External files: From which hosts files are downloaded. Preselected are your own domain, site-builder CDNs (Webflow, Squarespace, Wix, Shopify …), web fonts (self-hosted is more GDPR-friendly) and library CDNs. Services such as analytics, YouTube, Maps or cookie banners stay external; they need to stay live.
- Pages: The source as a page tree by URL path – each row shows source, title, target in IllusionCMS and status. The checkbox on a page with subpages cycles on each click: ☑ the page with all subpages (e.g.
/newswith all articles) → ▬ only the page → ☐ nothing. If you have toggled individual subpages by hand, it also shows ▬; the next click then selects everything again. Branches with many subpages are collapsed; levels without a page of their own in the source (/news/2024) appear as a group. The filter shows matches together with their parent pages. A*marks adjusted paths (lower case, umlauts, reserved names); links are rewritten accordingly. - Pages blocked via robots.txt are listed but deselected. When moving your own website, they usually belong to it – such as the legal notice or privacy policy. Select them too includes them.
3. Import. The import runs in the background with progress and a log. You can leave the page and come back later.
4. Result. An overview of new, updated and unchanged pages, of files and CSS/JS – with links into the editor.
What the import takes over
- Page tree from the URL paths. Missing intermediate levels (e.g.
/eventsfor/events/berlin/x) are created as drafts; their subpages are reachable nonetheless. - Title, description, Head (meta tags, Open Graph …), HTML and attributes of
<html>/<body>. - CSS/JS into the library. Whatever is identical on all pages becomes an inherited file on the target page; everything else stays exactly in its place (via
asset_url) so that the load order is right. - Images, fonts, videos, PDFs into the file manager, folder Import <domain>. For images with
srcset, only the largest version is downloaded; the CMS generates its own variants. - Links between the pages are rewritten to the new paths.
{{ … }}in the original is protected viaverbatim.
Repeating imports
An import can be repeated at any time to pick up changes in the source – without duplicates:
| Status in the selection | Meaning |
|---|---|
| new | will be created |
| will be synced | already imported; updated if the source has changed, otherwise skipped |
| changed locally – stays | edited in the CMS after the import; stays unchanged unless you check Also overwrite … edited in the CMS |
| overwrites | an existing, never-edited page (e.g. the empty starter home page) is replaced |
| other import – stays | the path belongs to a page that was imported from a different website – it is never overwritten. Usually “Create new website” is then the right target |
Files and CSS/JS are recognized by their origin: unchanged ones are reused (for images, the CMS only checks with the server instead of downloading them again), changed ones are updated in place. CSS/JS files edited in the CMS are kept. The publication status of existing pages stays as you set it.
Updating a single page: In the editor under Settings → Update from source.
Limits
- JavaScript apps (React/Vue without server-side rendering) deliver hardly any HTML – the analysis warns about this.
- Forms, search, logins, shops of the source are taken over only visually.
- Domain-bound services (cookie banners like Cookiebot, app frameworks like Wized) only work once the website runs under its real domain – in a test instance under
localhostthey stay empty. - Scripts that load further files at runtime relative to their own URL may need to be adjusted.
- CMS content of the source (e.g. blog articles from the Webflow CMS) is imported as individual static pages, not as a Collection.
Checklist for moving
- Test run into an empty subpage or a test instance, check the result.
- The real import onto the home page – with all pages blocked via robots.txt that belong to the website.
- Click through important pages in the browser, check the Warnings in the result.
- Switch forms over to your own solution.
- Move header/footer into Snippets or components (step by step).
- Point the domain to the IllusionCMS server, set up HTTPS (see Operation), submit
/sitemap.xmlto the Search Console.