Knowledge base migration from Notion to WordPress
Onimator's product documentation lived in Notion โ convenient to write in, but a closed tool: the content sat under a Notion address, not on the client's domain, practically invisible in Google and with no control over its appearance. We moved the entire knowledge base to WordPress: 48 articles in 7 sections and over 170 graphics landed in a separate, branded base under onimator.com/guides โ preserving the structure and without rewriting by hand. From now on the content works for the client's domain and brand.
How it works โ step by step
Base in Notion
48 articles in 7 sections lived in Notion โ convenient to write in, but off the domain and invisible in Google.
Export and analysis
We pulled the export from Notion and analyzed the structure: sections, articles, nesting and graphics.
Content conversion
We converted the content into the WordPress format, preserving the structure, headings and links.
Moving the graphics
We organized over 170 images and prepared them for upload, without cluttering the media library.
A dedicated knowledge base
We built a separate "Knowledge base" content type with sections and its own layout โ it does not mix with the blog or the store.
Published on the domain
The base runs under onimator.com/guides โ branded, indexable, with an index and section subpages.
What you get
Content on your own domain
The knowledge works for your domain and brand, not for someone else's tool.
Visibility in Google
Articles can be indexed and attract traffic โ which a closed Notion does not offer.
Consistent look
A base in the client's site style, not an alien, detached widget.
Order and navigation
Sections, a table of contents and subpages โ easy to find an article and grow the base.
No manual rewriting
48 articles and 170+ graphics moved automatically, preserving the structure.
Independence
The end of dependence on an external platform, its limits and its subscription.
Details
Why Notion alone is not enough
Notion is great for writing, but the content lives under its address, not on the client's domain. That means no real SEO (you are not building your own site's authority), limited control over the look and dependence on an external tool. For a knowledge base meant to attract and educate customers, these are significant limitations.
How the migration went
We pulled the full export from Notion, recreated the structure of sections and articles, and converted the content into the WordPress import format โ preserving headings, lists and links. We organized the graphics (over 170) into a readable structure and prepared them for upload so they would not clutter the media library. We imported the whole thing into a dedicated content type.
What the client got
Their own knowledge base (48 articles, 7 sections) running under onimator.com/guides, with an archive, section subpages and a ready index to place on any page. The base is branded, indexable and prepared for further growth โ new articles are now added directly in WordPress.
A bespoke pipeline converting the Notion export into a WordPress import (WXR) + a separate plugin registering a "Knowledge Base" content type with its own templates and shortcode.
Migration pipeline
A Notion export parser (markdown + media in nested folders) recreates the structure and generates a WXR file with 48 articles and 7 sections (mapped onto a section taxonomy) plus a bundle of 173 images in a tidy onimator-kb/ structure. The import goes through Tools โ Import โ WordPress, with attachment downloading disabled (media is uploaded separately, without duplicates in the library).
Knowledge Base plugin
It registers its own content type (onimator_doc) and a section taxonomy, with dedicated archive/single-article/section templates and an [onimator_kb_index] shortcode (title/eyebrow/subtitle parameters). The content does not mix with the blog or the store, and the base runs under the clean /guides/ URL.