| WordPress is a great platform because it has a huge community of developers, designers and wide variety of themes & plugins.
Most of the time existing solutions are pretty close but not quite. So site owners resort to customizations in order to save time and money. Many developers, when approached, would suggest building the solution from scratch because they like building things and always want to try a new framework and also so they can justify their quote.
Before making a decision several options need to be considered to see what’s in the best interest of the business. Sometime it would be quick and dirty fix and in others cases creating something almost from scratch. It really depends on the context, current/future plans of the business and how the WordPress plugin will be used.
Here are several approaches on how to customize a WordPress plugin
1. Hack an existing plugin’s code
2. Create an addon for the plugin
3. Hybrid approach: Partially hack the plugin & create an addon
4. Frankenstein’s monster approach: Create a custom plugin from scratch but use some ideas from existing WordPress plugin(s).
source