Skip to main content

Importing from WordPress

The WordPress import accepts a standard WXR/XML export and maps its posts and pages into one author space. Source users and password hashes are not imported.

Enable WordPress import, then open it from the author administration area. Authors target their own space. A superadmin can choose another existing account, including one with sign-in disabled.

Imported data

The importer preserves supported publication states and source timestamps, resolves page parents when the parent is present in the export, converts common HTML structures to Markdown, and localizes media that can be matched to exported attachments or reachable source uploads.

WordPress shortcodes without a safe tinymash mapping remain literal content. Comments, widgets, theme settings, and general WordPress configuration are not imported.

Options

  • Root aggregation can also place imported posts in the root blogroll.
  • Replacing posts deletes every existing post in the target author space before import.
  • Replacing pages deletes every existing page in the target author space before import.
  • Skipping unpublished entries leaves source drafts and other unpublished entries out of the import set.
  • Menu import can map recognized WordPress menus to the site-level primary and footer locations. The mapping is optional and based on conservative menu-name recognition.

Menu import changes site configuration even though the content target is an author space. Review the resulting menus after import.

CLI

php8.4 bin/tinymash.php wordpress-import preview export.xml --author=cajo
php8.4 bin/tinymash.php wordpress-import import export.xml --author=cajo

Use wordpress-import --help for media, menu, batch, memory, replacement, retention, and lock options.

Check the result

Review representative posts and pages, page hierarchy, non-ASCII text, code blocks, featured images, image variants, summaries, dates, drafts, menus, and the unresolved-media report.

Run the stored-content audit after a real import:

php8.4 bin/tinymash.php audit:remote-media --author=cajo

An unresolved source upload may be represented by a local placeholder that links to the original URL. The original binary cannot be recovered when it is absent from the export and no longer available at the source.