wp export

Exports WordPress content to a WXR file.

Generates one or more WXR files containing authors, terms, posts, comments, and attachments. WXR files do not include site configuration (options) or the attachment files themselves.

Examples

# Export posts published by the user between given start and end date
$ wp export --dir=/tmp/ --user=admin --post_type=post --start_date=2011-01-01 --end_date=2011-12-31
Starting export process...
Writing to file /tmp/staging.wordpress.2016-05-24.000.xml
Success: All done with export.
# Export posts by IDs
$ wp export --dir=/tmp/ --post__in=123,124,125
Starting export process...
Writing to file /tmp/staging.wordpress.2016-05-24.000.xml
Success: All done with export.
# Export a random subset of content
$ wp export --post__in="$(wp post list --post_type=post --orderby=rand --posts_per_page=8 --format=ids)"
Starting export process...
Writing to file /var/www/example.com/public_html/staging.wordpress.2016-05-24.000.xml
Success: All done with export.

Usage

wp export [--dir={dirname}] [--stdout] [--skip_comments] [--max_file_size={MB}] [--start_date={date}] [--end_date={date}] [--post_type={post-type}] [--post_type__not_in={post-type}] [--post__in={pid}] [--with_attachments] [--start_id={pid}] [--max_num_posts={num}] [--author={author}] [--category={name}] [--post_status={status}] [--filename_format={format}]

You can specify global options and the following:

[--dir={dirname}]
Full path to directory where WXR export files should be stored. Defaults to current working directory.
[--stdout]
Output the whole XML using standard output (incompatible with --dir=)
[--skip_comments]
Don't include comments in the WXR export file.
[--max_file_size={MB}]
A single export file should have this many megabyte. -1 for unlimited.
Default: 15
Filters
[--start_date={date}]
Export only posts published after this date, in format YYYY-MM-DD.
[--end_date={date}]
Export only posts published before this date, in format YYYY-MM-DD.
[--post_type={post-type}]
Export only posts with this post_type. Separate multiple post types with a comma.
Default: any
[--post_type__not_in={post-type}]
Export all post types except those identified. Separate multiple post types with a comma. Defaults to none.
[--post__in={pid}]
Export all posts specified as a comma- or space-separated list of IDs. Post's attachments won't be exported unless --with_attachments is specified.
[--with_attachments]
Force including attachments in case --post__in has been specified.
[--start_id={pid}]
Export only posts with IDs greater than or equal to this post ID.
[--max_num_posts={num}]
Export no more than posts (excluding attachments).
[--author={author}]
Export only posts by this author. Can be either user login or user ID.
[--category={name}]
Export only posts in this category.
[--post_status={status}]
Export only posts with this status.
[--filename_format={format}]
Use a custom format for export filenames. Defaults to '{site}.wordpress.{date}.{n}.xml'.

Source code of the commands