Export WordPress to XML

To create an XML feed go to WP All Export › New Export and choose the type of data to export. Drag and drop to select your data, rearrange XML elements, rename them, and customize your feed.

Custom XML vs. Simple XML

With the Simple XML Feed option you drag and drop to rearrange the XML elements. You can change the element names, but true customization is not really possible.

With the Custom XML Feed builder, you literally write out the XML feed by hand. You can nest elements as deep as you want, add elements outside of the looping post element, create custom loops with PHP functions, and more.

This guide covers Simple XML Feed exports, which are sufficient for most uses.

XML Sucks, but WP All Export Makes It Easy

XML stands for Extensible Markup Language. It was designed in 1998 by a group of sadists with the goal of being both human-readable and machine-readable. It often fails on both accounts.

Here's a simple XML export of the default first post created by WordPress:

With a simple XML export you don't have actually write or touch the XML at all.

Export WordPress data to XML

By default, WP All Export generates a CSV file. To change that, go to Export Type › Feed and select Simple XML Feed.

In the Advanced Options section, you can make a variety of changes:

  • Root XML Element: This is the first XML element that all others are nested inside. In the example above, that would be the <data> element.
  • Single Post XML Element: This is the XML element for each record. In the example above, that would be the <post> element.
  • Enable CDATA tags: Some characters in the data you're exporting might look like XML. CDATA tags are used to distinguish data that could be interpreted as XML markup, but should not be.

Multiple Elements per Field

When your export contains many elements in the same field, they use pipe characters (|) as a separator. For example, multiple images from a WooCommerce product's gallery:

Any exported field that has more than 1 value will have those values separated by a pipe character by default. Here's how a custom field with several values gets exported:

Custom XML Exports

Simple XML feeds can be very limited when it comes to modifying the structure of the data or adding special data into the XML export. Some exports may require special nesting or a different XML structure.

If you need a different XML format, you can use the Custom XML Feed option.