Contributing to a plugin you use (or use for client sites) can not only benefit the developer of the plugin, but can also benefit you (and other users) too. There are many ways to contribute to a plugin, not just in terms of development as well; anyone can get involved.
- Contribute a localisation – help make a plugin more popular in other languages, and save other uses time translating it themselves.
- Write documentation or report issues with what documentation it does have.
- If you spot a problem with the plugin, report a bug. Leave a detailed bug report with steps to reproduce. Coen recently made a post explaining how to leave a bug report here.
- If you are a developer, Fix a bug
- Help on the forums – All plugins hosted on WordPress.org have a community forum attached, so you can answer questions here to help other users.
- Leave a constructive review – If you’ve used a plugin, leave a (hopefully positive) review detailing what you like, what could be improved etc for the developer to see.
- Make a donation and help support the author/make them more enthusiastic
- Spread the word – A popular plugin is much more likely to be contributed to.
Why do this?
Contributing takes time – so why would you want to contribute anyway?
It will improve the longevity of the plugin
A well contributed to plugin will be more likely to be maintained in the future. If you use on your own sites or client sites this is in your best interest (you don’t want it to be abandoned or unsupported in future versions of WordPress).
It will improve your skills
To fix a bug you’ll need to delve into the code – by looking at the inner workings of a plugin you’ll gain an understanding of how it works and why. You may pick up new tricks, or spot bad practice, but ultimately your skills will improve.
Be listed as a contributor
Aside from the feel good factor, some plugins, particularly those hosted on github, will be able to list you as a contributor. WooCommerce for instance has a welcome page which pulls in all contributors from github. This of course gives other benefits, such as looking more credible to your clients because you can say “look, I did all this for X plugin”.
Make client builds easier
If you’re building bespoke functionality for a client on top of or around a plugin there may be a time when you think “I wish there was a hook here” or “this would be much easier with a new function”. Well contribute it! The core plugin will benefit from the change, and you’ll be able to use it from that point forward.
The alternative (if you need to change something in a plugin) is a non-upgradable mess so its best to contribute, unless you want to maintain your changes forever.
Increase value for your clients
Contributing fixes to core will improve overall stability of a plugin; if you use the plugin on client sites, all of them will benefit!