WordPress Registry

Store anything in registry for global-scope such as variable/values to access from plugins/theme. Get/check values of $_GET and $_POST variables.

Author:Rubin Shrestha (profile at wordpress.org)
WordPress version required:1.5
WordPress version tested:3.4.2
Plugin version:2.4
Added to WordPress repository:25-02-2012
Last updated:12-09-2012
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
Rating, %:0
Rated by:0
Plugin URI:
Total downloads:1 735
Active installs:10+
plugin download
Click to start download

The main reason for building this plugin is because wordpress doesn't readily have a central registry system where things can be stored such as variable values, objects, arrays. Which can be retrieved from a global space. This plugin basically tries to lessen the repeating declarations of variables and etc. It is something quite similar to Magento registry "Mage_Registry", but very light version.

This plugin can also be used as GET and POST request parameters handler. The benefit is, you don't have to check isset($_GET['myparam']) or isset($_POST['myparam']). If the param is not set, it will return a default value you supplied in second param. By default, the default value is false.

Handle the session data as easy as never before. Save to session, check existance, get, unset it easily using dynamic methods.

Hope this could be of some use.

Usage is very easy, neat and straight forward:

Register a dynamic method on the fly: registry()->setDynamicMethodName('this is my value'); registry()->setMyName('My Name is Rubin Shrestha');

Validate existance of your method and echo: if( registry()->hasDynamicMethodName() ) echo 'Has ' . registry()->getDynamicMethodName();

Unset the dynamic method: registry()->unsDynamicMethodName(); after this, if you echo registry()->getDynamicMethodName() it will return null;

For GET and POST request handler use it like this:

  • For $_GET, you can simply call registry()->request()->getParam('param_key', [default value if any, else blank, will return false]);
  • To check if the page type is $_POST use if( registry()->request()->isPost() ) { //do your stuffs here }
  • For $_POST, you can simply call registry()->request()->getPost('param_key', [default value if any, else blank; will return false]);
  • You can also do registry()->request()->getParams() and registry()->request()->getPosts();
  • You can also add request object scope variable, registry()->request()->setVariableName('this is my value');. Get the value by registry()->request()->getVariableName();

Session handler:

Handle the data in session as easy as registry()->session()->setDynamicMethodName('this is my value'); and get it as registry()->session()->getDynamicMethodName(); Unset it registry()->session()->unsDynamicMethodName();


ChangeLog