Software Licensing - Releasing Beta Versions

In version 3.5 of Software Licensing, support for beta software versions was added. This feature allows site administrators to distribute beta versions of their software, providing a more reliable system for smooth updates.

To release a beta version, you first need to enable a beta on your download product. This can be done from the product edit screen.

Once enabled, you will be asked to provide the version number, the beta download file, and the beta changelog.

The source file is what will be given to customers when they install the beta. If selling WordPress plugins or themes, this is the file that will be delivered via the EDD_SL_Plugin_Updater and EDD_SL_Theme_Updater classes. If selling non-WordPress software, this is the download package that will be delivered in the get_version API call.

The version number should be set to your latest version number with a beta indicator. For example, if you are releasing a beta for version 3.5 of your software, set this version to 3.5-beta1. If you need to release a second beta, set the version to to 3.5-beta2 and so on. If you wish, you may also use alpha version numbers to release pre-beta versions. Version numbers should follow conventional versioning in order to ensure new version checks work as expected.

The beta changelog field allows you to specify the information that will be made available in update notifications. When selling WordPress plugins or themes, this is the update information that will be displayed through the EDD_SL_Plugin_Updater and EDD_SL_Theme_Updater classes. If selling non-WordPress software, this is the information that will be included in the changelog portion of the get_version API call.

Beta versions are made available by appending &beta=1 to the get_version API call. This means that you will need to provide some mechanism for your customers to opt into beta versions if they wish to install / download the betas.

In our own usage of Software Licensing in Easy Digital Downloads, we have added a settings screen to our Tools menu that allows customers to opt into beta versions of our extensions. Here's a screenshot of what that looks like:

For WordPress themes and plugins, the beta=1 parameter will be added to the get_version requests automatically if the beta flag is passed to the plugin and theme updaters. Also note that the version of the plugin or theme in the code itself (the plugin header or theme header) should reflect the beta version. For example, use "2.8-beta1" instead of "2.8". See the plugin and theme implementation guides for more information: