Features
Contents
Features#
The plone.exportimport
package provides support to export and import all kinds of data from and to Plone sites using a intermediate json-format.
Most features use plone.restapi
to serialize and deserialize data.
Supported Data#
Content (Dexterity content items)
Ordering
Local Roles
Versions
Default Pages
Principals (Members and Groups)
Relations (Relationship between content items)
Translations (Translation groups)
Discussions (Content comments)
Redirects (Redirect information)
Exported Data Structure#
Some goals of the new data structure are:
Support diff of exported data
Have blob files near the content item that uses it
In the top level directory with the exported content, we have the following objects:
Name |
Description |
---|---|
|
Directory containing content item information exported from the site |
|
JSON File with discussions (comments) exported from the site |
|
JSON File with members and groups exported from the site |
|
JSON File with redirect information exported from the site |
|
JSON File with content relations exported from the site |
|
JSON File with translation groups exported from the site |
Content Directory structure#
In the content
directory we have all content items exported from the site. Each content item will have its own sub-directory, named with the UID of the content, including the serialized data and all blob files related to this content.
One special case is the directory for the Plone Site
object, that will be named plone_site_root.
Name |
Description |
---|---|
|
JSON File with metadata information about the exported content |
|
Directory with serialization for a content item |
|
Directory with serialization for the Plone Site Root |
Content Item Directory Structure#
Considering we have a File content item with UID 3e0dd7c4b2714eafa1d6fc6a1493f953
and a PDF file named plone.pdf
(added in the file
field), the exported directory will look like:
Name |
Description |
---|---|
|
JSON File with serialized representation of a content item |
|
Blob file stored in the |
Command Line Utilities#
This package provides two command line utilities: plone-exporter
and plone-importer
.
plone-exporter
#
Export content from a Plone site to a directory in the file system.
Usage:
plone-exporter
Example:
plone-exporter instance/etc/zope.conf Plone /tmp/plone_data/
plone-importer
#
Import content from a file system directory into an existing Plone site.
Usage:
plone-importer
Example:
plone-importer instance/etc/zope.conf Plone /tmp/plone_data/