ImpEx is a WordPress plugin that allows you to import and export data from and to your WordPress installation.
The primary goal for ImpEx is to provide a true Open Source WordPress Plugin for importing/exporting your WordPress data (including data from third-party plugins/themes).
This plugin is in an early (but working) stage.
Impex provides :
WordPress hooks for third-party plugins to expose their own data to ImpEx Import / Export without being dependent on Impex.
a (semi) streaming architecture for large data exports/imports.
Definition of configurable import/export profiles defining data providers to use and configuration of these data providers
- A user interface for importing / exporting data via ImpEx WP admin screen
the ImpEx API is designed to support resumable/cancelable imports and exports.
ImpEx provides a REST API integrated into WordPress
ImpEx is explicitly designed for use in managed WordPress instances
ImpEx development relies heavily on PHP unit testing its feature set to be stable and consistent.
a CLI for importing/exporting data via ImpEx REST interface.
The ImpEx CLI can be used as an alternative to the ImpEx WP admin screen.
related NPM package @cm4all-wp-impex/generator enabling transformation of any content to Impex Export format.
Your help is welcome !!
Where can I find the ImpEx documentation ?
Documentation is in a very early stage and is not yet complete.
It’s available at the Impex plugin GitHub pages
Please file bugs and feature requests at the Impex plugin GitHub issues
Why ImpE written in PHP 8 ?
Because PHP 8
is much faster than any previous PHP Version
allows a much cleaner PHP code
The plugin version available here (at WordPress plugin directory) is transpiled down to PHP 7.4
If you prefer to use the PHP 8 version, you can download it from the ImpEx WordPress plugin GitHub repository
What’s the current feature set ?
ImpEx provides right now generic providers for
import/export WordPress posts/pages including attachments/uploads and custom post types
import/export configurable database tables (can be used export data from third party plugins/themes)
import/export configurable wp_options (can be used export data from third party plugins/themes)
ImpEx imports and exports data as plain files directly to your local filesystem so that you can operate on the exported data (and attachments) without hassle.
ImpEx supports snapshots to allow you to rollback to a previous state of your data without downloading the whole data to your local machine
What’s planned for the future ?
developer documentation integrating your plugin / theme into ImpEx
an intuitive user interface allowing to configure import/export profiles and configuration of the used data providers based on React and JSON Schema
There are no reviews for this plugin.
Contributors & Developers
“cm4all-wp-impex” is open source software. The following people have contributed to this plugin.Contributors
- fixed extensionless attachment imports (ab28dc3)
- fixed getFiles() in @cm4all-wp-impex/generator (570f5e4)
- image attachments without extension can be handlet by impex (f8d157f)
- typos fixed (599e950)
- updated dev environment to wordpress 6.0.2 (271b33d)
- added cleanup option to “advanced import” ui (74ffc47)
- added import option to cleanup wordpress before import (98cb602)
- impex cli import now supports providing options to the import process (9064a77)
- impex cli supports import options like “impex-import-option-cleanup_contents” (b218221)
- import/export filters can now be filtered using wp filters (f94ae55)
- simple import roughly implemented (2836697)
- browser filesystem-api will use consistent snaopshot directory handle (3960b98)
- consumeImport will gracefully handle not set option impex-import-option-cleanup_contents (4ac7660)
- ensuring that the window.crypto api is available before using it (4b818b4)
- fixed crypto api detection (893ff0d)
- fixed error message if browser crypto api is missing (9544a00)
- fixed some typos (a79decb)
- getProfile() should return an ArrayIterator (ad6ace4)
- i18n translations fixed (8a7f392)
- impex error popup can handle multiline messages (f6b51e1)
- import will no more fail on unknown post type import (5e25505)
- import will not fail on unknown taxonomy references (eff2c2e)
- made snapshot import more sensitive about files/directories (f6120d4)
- relax import of users with illegal login (fea4c5a)
- simple ui labels fixed (be850cf)
- test environment runs only with disabled wp cron (ff24148)
- upgraded rector command to latest rector cli (bcfc886)
- import will no more fail on unknown post type import (df37c18)
- made snapshot import more sensitive about files/directories (e38ed41)
- import will not fail on unknown taxonomy references (c2016b5)
- upgraded rector command to latest rector cli (0976dcf)
- @cm4all-wp-impex/generator: package.json repository property fixed (b140ffe)
- impex-cli: made import option “profile” optional. default value is “all” (82517e2)
- rector upgrade (fae99b8)
- updated recommended vscode extensions (facf38e)
- updated supported wordpress version to 6.0 (be2a62d)
- added missing youtube links to npm package and wp plugin (62e225b)
- Documentation polished (1ae7828)
- removed obsolete files (0bc19e6)
- added npm package @cm4all-wp-impex publish informations (c0c659a)
- attachment: added slice property ‘impex:post-references’ (fca0be4)
- impex-transform: add testcase core/image injecting
- assert that WP_Filesystem() is already declared (5ff641f)
- fixed impexcli docker image build (ce435ee)
- fixed variable naming typo (e408ade)
- impex-cli-test: fixed paths to impex-cli (170af21)
- import php namespace issue fixed (342e5bd)
- wp-env: htaccess gets also deployed to test-Wordpress (993b275)
- impex-cli import and export finally works (482c87e)
- added additional links to impex plugin entry in plugins.php (4bd2a8a)
- fixed mdbook image generation (2f613fa)
- fixed typo in .wp-env.override.json (8b9227d)
- impex plugin readme template updated (56344dd)
- impex-cli: improved impex-cli logging (8476260)
- fixed wordpress.org subversion commit command in Makefile (3d7baa5)
- improved Makefile (8272a02)
- Makefile target “deploy-to-wordpress” – fixed SVN_* variable provisioning (d639f59)
- Makefile target “deploy-to-wordpress” – fixed typo in svn commit message (baedfde)
- Makefile target “deploy-to-wordpress” – SNV_* parameter provisioning (636ec30)
- fixed wordpress.org subversion commit command in Makefile (c098eb9)
- improved Makefile (0bafa03)
- Makefile target “deploy-to-wordpress” – SNV_* parameter provisioning (0a9db88)
- Makefile target “deploy-to-wordpress” – fixed SVN_* variable provisioning (4c7d229)
- Makefile target “deploy-to-wordpress” – fixed typo in svn commit message (e5edf8b)
- fixed installation of convert in github action dependencies (52e319c)
- fixed installation of github action dependencies (b4a7072)
- impex for php 7.4 infrastructure added (60d9ee5)
- implex plugin for php 7.4 will be generated (af7a393)
- improved github action semantic-release (feeeb53)
- added missing “Tested up to” metdata to plugin.php and readme.txt template (270355e)
- “Merge main back into develop” task of github release action fixed (e2e4632)
- github release action fixed (f26da00)
- fixed typo for impex plugin field “Description” (4e674f3)
- initial release (69a74a7)
- added missing package-lock.json (bf5b9d5)