A simple PHP based blogging platform.

WordPress Importer

This guide will show you how to import your WordPress posts, pages and images into Pure Blog. The process is fairly simple and should only take a few minutes.

All the files mentioned below are available on GitHub.

WordPress — Web UI

Copy import_wordpress.php to your Pure Blog root, then visit:

https://yourblog.com/import_wordpress.php

You must be logged in to the Pure Blog admin. The importer walks you through three steps:

  1. Upload — upload the WXR export file, or enter the path to a file already on your server (useful for large exports that exceed PHP's upload limit)
  2. Preview — review what will be imported, with a count of posts, pages, drafts, and items containing images
  3. Results — summary of what was imported, with any image failures logged to content/wp-import-errors.log

The search and tag indexes are rebuilt automatically.

Getting your WordPress export

In WordPress admin: Tools → Export → All content → Download Export File. This gives you a .xml file (WXR format).

What gets imported

Drafts are skipped by default.

Images

The web importer can handle images in two ways:

  1. Path to wp-content/uploads (recommended) — enter the server path to your WP uploads folder and files will be copied directly. Fastest and most reliable.
  2. HTTP download — if no path is provided, the importer will try to download images from the URLs in the export. Requires those URLs to be publicly accessible.

If your WP site was restored from a backup or migrated to a new domain, the image URLs in the export may still point to the old domain. Use the uploads path option in that case.

WordPress — Command Line

Useful when setting up a fresh Pure Blog install before it's running, or if you prefer the terminal. The search and tag indexes will need to be rebuilt manually afterwards by opening and saving a post in the admin.

Copy cli_import_wordpress.php to the root of your Pure Blog installation.

Usage

php cli_import_wordpress.php <export.xml> <path-to-pureblog> [options]

Options

Examples

# Basic import (downloads images from the live WP site)
php cli_import_wordpress.php export.xml /var/www/pureblog

# Import using a local uploads folder (recommended)
php cli_import_wordpress.php export.xml /var/www/pureblog --uploads-dir /var/www/wordpress/wp-content/uploads

# Preview without writing anything
php cli_import_wordpress.php export.xml /var/www/pureblog --dry-run

# Include drafts, skip images
php cli_import_wordpress.php export.xml /var/www/pureblog --drafts --no-images

docs

⬅ Previous post
Pure Blog Importers

Next post ➡
Bear Blog Importer