This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Template Dictionary


Template Dictionary is a plugin which can be used to create template variables editable by admins.

The plugin is multilingual ready. It includes Polylang integration, another multilingual plugin can be integrated with filters.

Admin pages

There are few admin pages for managing the plugin.

  • Template Dictionary – view, edit and delete the template variables values
  • Settings list – view, edit and delete template variables settings
  • Add setting – add new or edit template variables setting
  • Edit values – edit a value, this page is accessable from the page Template Dictionary
  • Export/Import – export settings and values to xml or import it from xml

Usage in template

You can use a value in template by calling function get of Template Dictionary object, which can be accessed by function TmplDict().

For example, if you set a setting with code the_code, you can use it’s value by:

TmplDict()->get( 'the_code' );

This function returns the value. If you need to echo the value, you can use function eget. Both functions have an optional argument $default, which is the default returned/echoed value, if the admin value is empty.

You can also get the value by accessing the code as property:

$value = TmplDict()->the_code;

Usage with shortcode

You can also use a shortcode [tmpl_dict] with attributes code, default and do_shortcode. The last attribute says, if the function do_shortcode will be called on the value.

Setup template language

Default template language can be set by setting the constant TMPL_DICT_DEFAULT_LANG in wp-config. Default value of this constant consists of two first characters of the current WP locale. It is important to set the default language constant properly if you plan to create your site multilingual in future.

If you have a multilingual site, you need to set current template language with the filter template_dictionary_language. For users of Polylang, it is already integrated in this plugin, the current template language is the Polylang current language slug.

Setup available languages

If you have a multilingual site, you also need to set available languages with the filter template_dictionary_languages. Again, if Polylang is activated, these available languages consist of Polylang languages slugs.

If your site is not multilingual, there is only one available language – the default language.

Use JS object

To generate JavaScript dictionary object, you need to define TMPL_DICT_JS_VAR_NAME constant. Add to wp_config.php:

define( 'TMPL_DICT_JS_VAR_NAME', 'dict' );

Then you can use it in JS:

$('#some-element').text( dict.the_code );


  • Setting up a variable
  • Filling out values
  • Values list
  • Various field types
  • Export/Import page
  • Using values in template


There are no reviews for this plugin.

བྱས་རྗེས་འཇོག་མཁན། & གསར་འབྱེད་པ།

“Template Dictionary” is open source software. The following people have contributed to this plugin.




  • Fix: When exporting both settings and values, export empty settings too.
  • Fix: Correct number of placeholders for wpdb::prepare.


  • Added method to get whole dictionary array.
  • Added JS dictionary object.


  • Added term field type.
  • Add admin info notice if TMPL_DICT_DEFAULT_LANG constant is not set.


  • Fix: Page for editing settings was not showing.
  • Show admin submenu opened on Edit Values page.


  • Fix: screen option per_page on settings list
  • Enabled caching of values
  • Set user locale as language in admin if it is in available languages list.
  • Refactored admin pages


  • Added post-multiple field type.
  • Added method __get for accessing dictionary values as properties.


  • Fix: notice after deleting setting
  • Do not show empty field options in settings list.