An installer for WordPress plugins and themes.
- Store a list of valid WordPress, Newfold, and custom URL plugins and themes, hereinafter referred to as valid plugins and themes.
- Provide REST API endpoints to install and/or activate valid plugins and themes synchronously or asynchronously (using WP_Cron).
- Provide REST API endpoints to check the status of asynchronous requests and functionality to expedite them.
- Provide Service classes that contain all the functionality which can be used independently of the REST API.
- Provide flexibility to install and activate valid plugins and themes synchronously or asynchronously (using WP_Cron).
- If a user requests a valid plugin or theme installation/activation, it should be completed successfully.
- If a user requests an invalid/non-approved plugin or theme installation/activation, it should fail.
- If a user requests to asynchronously install/activate an approved plugin or theme, then the API returns the correct status of the request in the queue.
- If a user requests to expedite an asynchronously queued valid plugin or theme installation/activation, then it must be completed successfully without affecting other requests.
Run the Newfold Prepare Release
github action to automatically bump the version (either patch, minor or major version), and update build and language files all at once. It will create a PR with changed files for review. Using this workflow, we can skip all the manual steps below.
- Bump version constants in the proper files:
includes/Data/Constants.php
: (NFD_INSTALLER_VERSION)package.json
: version
- Clear old build files
- Create new build files
- Update language/i18n files as needed
composer config repositories.newfold composer https://newfold-labs.github.io/satis
composer require newfold-labs/wp-module-installer