PTA Member Directory and Contact Form

plugin banner

Create and display a member/staff directory and contact form. Sortable list of staff by position/title. Spambot protected contact form. Many options.

Author:Stephen Sherrard (profile at
WordPress version required:3.3
WordPress version tested:4.3.1
Plugin version:1.6.8
Added to WordPress repository:26-07-2013
Last updated:14-11-2015
Rating, %:98
Rated by:10
Plugin URI:
Total downloads:24 505
Active installs:1 000+
plugin download
Click to start download


This plugin lets you create a custom member (or staff) directory, along with an associated contact form, for your organization. Create as many positions and members (staff) as you like. Each person can have multiple positions, and each position can have multiple members (staff).

You can also enable and add locations, allowing you to set up different directory listings and contact forms for multiple locations or offices. Members can belong to more than one location. Locations can be set with either shortcode arguments or URL arguments from links.

The directory list is displayed by position, and positions can be sorted on the admin options page with a simple drag and drop interface.

The contact form can be set up to select an individual, a position, or both. If a position is selected, all members who hold that position (and who have a valid email) will be emailed the message. Vacant positions, and individuals without a valid email, will not be shown on the contact form.

There is built-in integration with the Contact Form DB plugin so any form submissions (that pass validation and spambot check) will be saved to the database via the CFDB plugin.

Detailed Help tabs for all admin screens for the plugin

Version 1.4 adds a new role "PTA Manager" which has all the same capabilities as the WordPress "Editor" role, but also adds capabilities to manage this and other PTA plugins settings. This allows you to give control of the settings of this plugin to somebody else in your organization without giving them full admin level access.

The directory has a variety of options for customization:

  • Choose the heading to display for "Position" in the directory (e.g., you can choose to show "Title" instead of "Position")
  • Choose the heading to display for "Location" in the directory and contact form (e.g., "Office", "City", "Branch", etc.)
  • Contact form contact select drop down can be configured to display individuals, positions, or both. If you choose "both", there are nice headers to separate positions and individuals.
  • You can choose to show full names, only first names, or nothing, after positions on the contact form select box, which will show for each person that holds that position
  • You can also choose to show the positions a person holds after their name when showing individuals on the contact form.
  • You can also choose to show locations after each person's name on the contact form
  • Use the shortcode to put the directory on any page and dynamically generate a contact form. Or, use a separate shortcode for the contact form so it can also be used independently of the directory (the directory will then use that page for the contact form)
  • Choose to show or hide phone numbers in the directory
  • Choose to show emails in directory OR a link to the contact form (which then passes the position or individual to the contact form, so the recipient selection is already made)
  • Choose to hide the directory from the public, so that only logged in users can see it. You can also choose the minimum user level to view the directory (subscriber or contributor)
  • Type in your own message to display on screen after the contact form has been submitted (HTML formatting allowed)
  • Choose to diplay images in the directory, and pick the size of the images. If you display images, then the images will link to the individual member/post page. Members are a custom post type, and the full editor for them is enabled, so you can create a bio page for each member. The Featured Image is the photo that will be displayed in the directory, when photos are enabled.
  • Enable or disable Contact Form DB integration, and choose the form title to post to CFDB.