Plugins can be one of the most useful parts of your application, if developed correctly. Felix Geisendörfer has posted some of his opinions on what this way might be and a basic model to get started with - specifically related to building them inside a CakePHP project.
I think a lot of people, including me, are trying to create modularized websites where they can simply drop in a new folder and new functionality will start to appear on the site. The system I'm working on right now is called SpliceIt! and I've decided to use plugins as those modules. In this post I'll explain what plugins are for, how they are implemented in CakePHP and what I did to make them work according to my ideas ; ).
He talks about what plugins are and how you can create one in the framework (location, model, view, etc). They also give brief examples of what the controller and model would look like for a simple plugin. They touch on how to use this plugin code and provide some useful tips for common issues and getting everything working smoothly.