Friday, February 26, 2010

Extensible Widgets

Author: Jim Isaacs

In addition to adding numerous extremely useful widgets for developers and users alike, this plugin is a system written on a PHP 5 object oriented structure. In short, it is built for modification and extension. It wraps the WordPress Widget API to allow for an alternative, and in my opinion more robust method to hook into and use it. Widgets are WordPress’s version of user interface modules. They already support an administrative and client-side view. This system simply leverages that with a higher potential in mind


Upload the extensible-widgets directory to the /wp-content/plugins/ directory

Activate the plugin through the ‘Plugins’ menu in WordPress

Go to the ‘Extensible Widgets’ administration page to configure settings and to register desired widgets


Why PHP 5?

This is what the codebase is written for, it is not going to change. Sorry, welcome to the future.

What exactly is an extensible widget’?

It is a PHP widget class built within the parameters of the ‘Extensible Widgets’ framework for widgets. Any extensible widget can be extended, but retain the functionality of all the parent classes that it may extend. ‘Extensible Widgets’ also provides administration to allow for users to control this functionality within the UI of that widget.

What is widget registration?

The term ‘registered widget’ is not necessarily what is added to your widgetized areas. Instead this is like the blue-print for those instances. When you register a widget, what you are doing is allowing for instances of that widget to be created and added to your areas from that registered blue-print. Beware! When you unregister a widget, all instances that were added across all widgetized areas automatically disappear. You can get them back, but I don’t suggest unregistering something unless you are really sure you want to.

Do the widgets depend on each other, do I need to activate one with another?

Yes, and no. They do depend on each other, but this is on the PHP side of things, and in no way important to the registration of the widgets in the administration pages. Basically you can register the ‘Widget Group’ widget, without having to register the ‘Widget Base’ widget, or any other of it’s PHP dependencies.

Is ‘Extensible Widgets’ right for me?

Honestly this is a pretty advanced plugin that I would say is mostly for developers. Though I am trying to make it easier for developers to control the capabilities of the widget included with ‘Extensible Widgets’ to make it less developer centric on a per user basis (role/capability level).

Is ‘Extensible Widgets’ right for my site?

Numerous times I need a way to put the same content in different places around my site. This content is usually represented as posts, pages, or basically anything. I developed this plugin as the answer to this problem, using the already built WordPress Widgets framework. Widgets made sense to use because of their very nature. If you are looking to answer a lot of these same problems I was having, then this plugin will serve you well.

What about the data?

Once you start using this plugin, you will notice that widgets will become a major part in the whole of your website. Because of this fact, I included Import/Export functionality for the settings of ‘Extensible Widgets’, and all of your widget data from WordPress itself.

Extensible Widgets


No comments:

Post a Comment