A very light-weight plugin, designed to easily create and manage a staff directory on your WordPress theme. Admins can manage staff records by importing (from CSV) or editing records individually. Record columns may be reordered (or hidden). Directory is sortable by column header, paginated, searchable, and customizable (by subset of records or number of records per page) using simple shortcode attributes.

Simple, Straight-Forward

The plugin is very light-weight, but robust. It allows for the individual management of staff directory records, or append/replace using a simple CSV (comma-separated variables) document.

  • Update five standard fields for each staff record (last name, first name, department, email, phone number)
  • Import from CSV allows administrators to keep their staff directory maintained, either by appending new records, or replacing the entire directory with an updated list
  • Fields are not required (and may be left blank) for general department mailboxes or numbers
  • Updates are performed on-the-fly, so no lengthy reloads are necessary
  • Design is split into separate stylesheet for ease of theming
  • No edit links or popups, just make your changes in-line
  • Case-insensitive substring search, with highlighted matches on front end
  • Uses jQuery/AJAX for page handling, sorting & searching without pageload
  • Tipsy is incorporated for contact cards, to display additional information about each StaffList record
  • StaffList can be placed into content editor using the shortcode [stafflist]
  • Multiple StaffLists are supported in a single page and are customizable by shortcode attribute (e.g.: [stafflist subset=”department:marketing”])


  • The backend directory manager, for adding or modifying records individually
  • The backend directory manager, for importing a full directory list from CSV
  • The backend directory manager, for choosing and ordering your columns
  • The contact card displays additional information about each contact record
  • Example of a directory search


  1. Install StaffList either via the plugin directory, or by uploading the files to your server (in the /wp-content/plugins/ directory).
  2. Activate the plugin.
  3. Create a staff record (or as many as you need)
  4. Insert the staff directory into your page using the shortcode [stafflist]


Installation Instructions
  1. Install StaffList either via the plugin directory, or by uploading the files to your server (in the /wp-content/plugins/ directory).
  2. Activate the plugin.
  3. Create a staff record (or as many as you need)
  4. Insert the staff directory into your page using the shortcode [stafflist]
Are there any new features planned?

Yes. We plan to add a feature to use infinite scroll instead of page numbers.

Can i propose a feature?

If you wish. Sure.


The right tool for the job

Finally the right tool for the job we needed. When we had the server up and running, this script was fully loaded with all the data within 5 minutes after first install of WordPress. It’s very easy to modify to your needs, although I was a bit skeptical at first to do actually do this. Thank you for this amazing plugin! Will keep you updated on the changes / improvements I made on my side.

Works well

Our receptionist is in charge of our intranet too. So when we were looking to update the admin system for office news and events, it made sense that we’d put our company directory on there too. She already knows the ins and outs of WordPress so, updating our directory is easy! Great plugin.

Read all 7 reviews

Contributors & Developers

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


Translate “StaffList” into your language.

Interested in development?

Browse the code or subscribe to the development log by RSS.



  • Changed the INSERT from $wpdb->Insert to $wpdb->Query with prepared query to fix a bug brought up by blastiu17 (thank you).


  • Introducing subsets! StaffList now gives users control over which records are included in each instance of the directory using simple shortcode attributes. Multiple StaffLists can also be added in a single WordPress page.


  • Fixed an issue with sorting by custom columns; per pawlaz (thank you).


  • Changed PHP4-style constructor to PHP7; per recommendation by NetzzJD (thank you).


  • New admin feature to search the full directory; per recommendation by gustavoo (thank you).


  • Replaced mysql_real_escape_string(); per recommendation by encweb (thank you).
  • Added white-space: nowrap; per recommendation by digitlbill (thank you).


  • Major release: This version allows admins to order columns by preference, and choose which will be visible in the StaffList directory (versus those in the contact card). All columns are searched, and there are now upto 10 custom columns in addition to the five standard columns. Please be advised that this version does require a rebuild of the database tables, and will clean out any directory data you currently have stored.


  • Bug Fix: Updated ajax_object to use ajaxurl


  • New release now supports CSV import to append or replace your staff directory
  • More intuitive front-end sorting by First Name, Last Name, Department and Email Address
  • Better responsive style for narrower content areas
  • Added support for up to 9 custom columns (e.g.: Title, Building, Room) that are also searchable
  • Contact card now has hover to show additional columns


  • Minor change to allow multiple stafflist instances per page (for responsive view, perhaps). Testified/Verified Compatibility with WordPress 4.4.1


  • Testified/Verified Compatibility with WordPress 4.3


  • Update to fix interference with paging styles from some themes.


  • Testified/Verified Compatibility with WordPress 4.2.2


  • Added donate link 😉


  • Added new plugin icons.


  • StaffList now in official release.


  • Fixed issue with users pressing enter on a realtime search.


  • Adjusted pager to allow for user config of # records/page.
  • define(‘RECORDS_PER_PAGE’, 25); //stafflist.php


  • Improved styles.


  • Improved styles.


  • Added a banner image.


  • Added a new screenshot to show the regex search results


  • Plugin-out only in beta, currently. Standby for official release.