Skip to content

ImpEx is a Wordpress plugin that allows you to import and export data from/to your WordPress site.

License

Notifications You must be signed in to change notification settings

IONOS-WordPress/cm4all-wp-impex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

General

The official cm4all-wp-impex WordPress plugin for PHP 7.4 can be downloaded from the Wordpress Plugin Directory.

If you prefer to use the PHP 8 version of the Plugin, you can download it from the GitHub project repository releases page.

Dependencies

This plugin requires

  • WordPress Version : see plugins/cm4all-wp-impex/plugin.php header

  • PHP Version : see plugins/cm4all-wp-impex/plugin.php header

Documentation

Documentation can be found here : https://ionos-wordpress.github.io/cm4all-wp-impex/

Development

Please note that the development scripts are currently only tested in Linux. Chances are high that they work also on MacOs and using Windows WSL.

Afer checkout simply call make to

Execute make help to see all available commands (including description). Make targets markled with asterisk (*) are the primary targets you may want to execute.

JS/CSS assets

  • start make dev

On every change to the JS/CSS files in the plugin the transpiled files are generated in the dist folder and the recent browser tab gets reloaded.

gh_pages

gh_pages is done using mdbook.

  • start make dev-gh-pages

On every change the book gets rebuild and immediately rerendered in your browser.

Debugging

wp-env

  • start the VS Code launch configuration (generated by make) containing impex in VS Code

  • Execute make test-phpunit

phpunit

  • start the VS Code launch configuration (generated by make) containing impex phpunit in VS Code

Prerequisites

  • PHP needs to be installed on your local machine for installing composer updates

Dependencies

  • make (GNU Make > 4.0)
  • nodejs (see .nvmrc)
  • docker
  • nvm (optional)
  • entr, xdotool and google-chrome for make dev (reload chrome browser tab after rebuild)
  • msgmerge, msginit and msgfmt for i18n resource building (usually contained in *nix package gettext)
  • subversion, librsvg2-bin and imagemagick for wordpress.org deployment

Update nodejs dependencies

release

The release process is done by Github Actions when the main branch gets updated (git push)

To make a release :

  • fetch remote changes including tags for branch main : git fetch --tags origin main:main

  • merge main into develop (prevent creating a merge commit message) : git rebase --no-ff main or git merge --no-commit --no-ff main

  • push develop to main to trigger release creation using ci : git push origin develop:main