Simple:Press 5.0 Preview: Plugins
The Simple:Press team is really excited about version 5.0. And with the alpha testing getting ready to commence in a week or two, we have good reason to be excited. We have been working long and hard on 5.0. We are anxious to share our work with you and get some initial feedback. In our 5.0 Alpha Announcement post we talked about the alpha being primarily for testing of the new plugins and themes API.
Plugins are something we have wanted to do for Simple:Press for sometime now. Over the years, the core code has bloated to nearly 2.5 MB as we added in new features and capabilities. Not all of these features and capabilities are used by all users. Additionally, we get a lot of requests for new features too – again, ones that wont be used by everyone. Plugins allow us to break out some capabilities and functionality into add on modules. If a user wants that capability, they can just add the plugin and press on. If you don’t, then your Simple:Press core will be leaner. As of the writing of this post, and its certainly subject to change as we finish the 5.0 development, the core code size is down to under 800 KB. Thus far, the functionality that we have pulled out into a plugin includes:
- Admin Bar
- Custom Profile Fields
- Policy Documents
- Post Rating
- Private Messaging
- Profanity Filtering
- DB Pruning
- Editors (TinyMCE, HTML, and BBCode)
- Report Post
- Spam Registrations
- Syntax Highlighting
Additionally, we have created a few new plugins for use with 5.0. These include:
- Akismet Spam Prevention (have Akismet monitor your posts for spam)
- Online Activity (see who is visiting what pages in your forum)
We expect the number of plugins to grow considerably after the 5.0 release. A lot of the requests from folks are simple plugins. We hope the community gets behind plugins and contributes some back. We certainly will whip up a few plugins as we have some tickets that have been just waiting for the plugin API.
To facilitate plugins, we developed an API and leaned heavily on the WP plugin API. So the former SP program hooks and how they were implemented are no more. We have now sprinkled a liberal amount of hooks (actions and filters) around our code core to make it easy for plugins to hook into what’s going on and affect it in their plugins. Additionally, the inclusion of themes into 5.0 (that’s a post for another time) and the use of template tags much like a WP theme make it possible for plugins to provide an easy method for users to put the plugin output wherever they want. Of course, we cannot predict every location where a hook or filter will be needed so as time goes by and users start playing with the plugin API, we will add more hooks and filters. Did I say their was a 5.0 alpha coming up to play with the plugin API? 😉
To help admins manage their Simple:Press plugins, we have created a new admin panel that lists all currently loaded plugins. Just like with WP, you can have plugins activated or deactivated. This admin panel will show you which plugins are active and which are not. Also, if a plugin has an update available, it will be shown on the plugins panel too. And yes, you can upgrade any plugins with an update available right there from within the WP admin panel (assumes the plugin is in the SP plugin repository). We will cover the inclusion of the auto update of sp core, plugins and themes in another preview post, but it too is a big deal! Additionally, on our storage locations admin panel, you can choose where to store your SP plugins that you are using.
So plugins have arrived to Simple:Press with a bang in 5.0!