Plugin for Omeka that allows to serve alphabetized indexes of selected item types and elements of all items of an Omeka instance, or an expandable hierarchical list of all subjects. These pages can be displayed in any page via a helper or a shortcode.
Clone or download
Pull request Compare This branch is 54 commits ahead, 2 commits behind pobocks:master.

Reference (plugin for Omeka)

Reference is a plugin for Omeka that allows to serve an alphabetized index of links to records or to searches for all item types and metadata of all items of an Omeka instance, or an expandable hierarchical list of specified subjects. These lists can be displayed in any page via a helper or a shortcode.

This plugin is upgradable to Omeka S via the plugin Upgrade to Omeka S, that installs the module Reference for Omeka S.


Uncompress files and rename plugin folder "Reference".

Then install it like any other Omeka plugin and follow the config instructions.


The plugin adds secondary links in the secondary navigation bar:

For the list view, the references are defined in the config page.

For the tree view, the subjects are set in the config form with the hierarchical list of subjects, formatted like:

- France
- Germany
- United Kingdom
-- England
-- Scotland
-- Wales
- Japan

So, the format is the config page for the tree view is:

  • One subjet by line.
  • Each subject is preceded by zero, one or more "-" to indicate the hierarchy level.
  • Separate the "-" and the subject with a space.
  • A subject cannot begin with a "-" or a space.
  • Empty lines are not considered.

These contents can be displayed on any page via the helper reference():

$slug = 'subject';
$references = $this->reference()->getList($slug);
echo $this->reference()->displayList($references, array(
    'skiplinks' => true,
    'headings' => true,
    'strip' => true,
    'raw' => false,

For tree view:

$subjects = $this->reference()->getTree();
echo $this->reference()->displayTree($subjects, array(
    'expanded' => true,
    'strip' => true,
    'raw' => false,

All arguments are optional and the default ones are set in the config page, but they can be overridden in the theme. So a simple echo $this->reference(); is enough. For list, the default is the "Dublin Core : Subject".

The shortcodes "reference" and "subjects" can be used too, in particular in exhibits and in simple pages:

[reference slug=date skiplinks=true headings=true raw=false]
[subjects expanded=true raw=false]

Arguments that are not set use the default values.


Use it at your own risk.

It’s always recommended to backup your files and your databases and to check your archives regularly so you can roll back if needed.


See online issues on the plugin issues page on GitHub.


This plugin is published under GNU/GPL.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

The plugin uses a jQuery library for the tree view, released under the MIT licence.


Current maintainers:

This plugin incorporates earlier work done by William Mayo (see pobocks on GitHub) in Subject Browse, with some ideas from Metadata Browser and Category Browse, that have been upgraded for Omeka 2.x too (Subject Browse (2.x), Metadata Browser (2.x), and Category Browse (2.x)). They are no longer maintained.

Upgrade and improvements have been made for Jane Addams Digital Edition.


  • Copyright William Mayo, 2011
  • Copyright Daniel Berthereau, 2014-2018
  • Copyright Philip Collins, 2013 (jQuery tree view)