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.
This plugin requires
-
WordPress Version : see
plugins/cm4all-wp-impex/plugin.phpheader -
PHP Version : see
plugins/cm4all-wp-impex/plugin.phpheader
Documentation can be found here : https://ionos-wordpress.github.io/cm4all-wp-impex/
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
- build the project :
make - setup an wp-env instance (available at http://localhost:8888)
Execute make help to see all available commands (including description). Make targets markled with asterisk (*) are the
primary targets you may want to execute.
- 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 is done using mdbook.
- start
make dev-gh-pages
On every change the book gets rebuild and immediately rerendered in your browser.
-
Ensure the VSCode PHP Debug extension (https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-debug) is installed
-
Set some breakpoints.
-
start the VS Code launch configuration (generated by
make) containingimpexin VS Code -
Execute
make test-phpunit
- start the VS Code launch configuration (generated by
make) containingimpex phpunitin VS Code
- PHP needs to be installed on your local machine for installing composer updates
- make (GNU Make > 4.0)
- nodejs (see .nvmrc)
- docker
- nvm (optional)
entr,xdotoolandgoogle-chromeformake dev(reload chrome browser tab after rebuild)msgmerge,msginitandmsgfmtfor i18n resource building (usually contained in *nix packagegettext)subversion,librsvg2-binandimagemagickfor wordpress.org deployment
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
mainintodevelop(prevent creating a merge commit message) :git rebase --no-ff mainorgit merge --no-commit --no-ff main -
push develop to main to trigger release creation using ci :
git push origin develop:main