The short story

I wanted to simplify WordPress for my clients so that they would not be bogged down by rarely used features. So, I wrote a plugin to do just that, and called it ‘WPlite’.

(But you can also read the long story.)

Features

WPlite allows you to

  1. selectively hide menu items from the WordPress administration area
  2. selectively hide ‘meta boxes’ from administration pages such as the ‘Dashboard’, and the ‘Add New Post’ pages.

Note: Because the features are merely hidden, any determined user can still access the features if they wish to.

Download

The latest version is 2.8.4.

Older versions of WPlite can be found here.

About the author

My name is Muhammad Hirman, and I am a 23 year old guy from Singapore. Please contact me if you find any bugs, or have any questions.

Donate

If you found this plugin useful (or ‘got the job done’, so to speak), please consider donating some money for it. It will help to pay my Web hosting fees, and coffee.

The long story

Here is a collection of subjects which I think are pertinent only to those who are interested to know more about WPlite.

How it works

The hiding of menu items is done by manipulating the $menu and $submenu global variables. The hiding of ‘meta boxes’ is done by manipulating the $wp_meta_boxes global variables.

As such, all pages are actually still there, and accessible if their URLs are entered manually.

If you need greater control over user permissions e.g. you want to completely disallow users from using a certain feature, please consider using other ‘role manager’ plugins.

Support

Since the first version of this plugin was released, many have asked me to upgrade it whenever a new WordPress version is released.

I realised that this is difficult, because this plugin deals with the presentation of WordPress, and WordPress constantly changes the way it renders its presentation with every new version or feature (even though it may try to minimise that). In particular, there is great difficulty is in accomodating new features, while maintaining compatibility with older versions.

For example, in WordPress 2.5.* - 2.6.*, ‘meta boxes’ could only be hidden using CSS, which involved hardcoding of selectors for the appropriate ‘meta boxes’. However, in WordPress 2.7.* - 2.8.*, ‘meta boxes’ were configured more systematically and could be hidden by manipulating the right PHP variable. Maintaining compatibility across these two generations would be tedious. Also, with the improvements in the newer version of WordPress, the older implementation seems obsolete (if not stupid) and ought to be discarded.

It is not that I am not capable of conquering such difficulties, but it is increasingly time-consuming and I feel that it is not worth the effort. After all, I think some of WPlite’s users’ needs are better met by more suitable and more powerful plugins.

So, the best I can do is to release versions of WPlite which are compatible only with the latest version of WordPress. Also, I will only evolve this plugin as I need it, and will fix only obvious flaws.

Most importantly, WPlite will not do more than it was originally designed to do.

Version numbering

Early users of WPlite may have realised a change in the version numbering of WPlite. The current version numbering system is to mirror the latest WordPress version with which it has been tested. This is a change from the older numbering scheme, which was rather arbitrary.

At the point of writing, the WPlite version is 2.8.4, which means that it has been tested with WordPress 2.8.4. However, this does not mean that it is compatible only with WordPress 2.8.4. It happens that the WordPress framework for the 2.8.* versions is similar to the 2.7.* versions, so, WPlite 2.8.4 still works with WordPress 2.7.*.