Are there any best practice guidelines regarding how a plugin should distribute a third-party program with it's own installation? If there are no guidelines, then what are the most popular methods?

For example, our plugin requires the installation of a third-party (GPL compatible) program. To ease installation, the third-party program would be included with our plugin and it will offer to run a version of the program that is compatible with their hosting environment that is included in our plugins assets directory (or other directory?). Updates to the third-party program would be handled by updating it along with our own plugins updates ([our version].[third-party-version]).

  • You mean a third party library?
    – leymannx
    Commented Apr 22, 2019 at 22:12
  • What type of program? Where's it supposed to run? Commented Apr 23, 2019 at 15:35
  • @leymannx not a library, a program written in C++ Commented Apr 23, 2019 at 16:52
  • @JacobPeattie a program that makes RPC calls available, so I'm doing service calls, but locally to the local server. Commented Apr 23, 2019 at 16:53
  • Unless this is a PHP library that can be bundled with the plugin, it has no place inside a plugin, and should be distributed separately. Commented Apr 24, 2019 at 2:04

2 Answers 2


their rules specifically say

Externally loading code from documented services is permitted.

however all the related examples are about javascript or wordpress plugins.

Management services that interact with and push software down to a site are permitted, provided the service handles the interaction on it’s own domain and not within the WordPress dashboard.

which doesn't apply since I'm not providing a remote service but a local service. (unless an http download counts as a "management service")

I emailed [email protected] and got an official response.

You cannot include the binary, nor can you one-click to install.


One of the most common methods used for this is the TGMPA plugin: http://tgmpluginactivation.com/

Which supports customizing the source for the plugin, if it's not a standard WordPress repository plugin: http://tgmpluginactivation.com/configuration/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.