By Tukulti65 - Own work, CC BY-SA 4.0,

Participants Database

This WordPress plugin is for the purpose of creating a simple database for use on a WordPress site. It is primarily intended as a way to manage information pertaining to people such as the members of a club or team, volunteers, students, anything like that. It gives you the ability to create forms that allow people to create and edit their own record while additional information can be managed by administrators or managers.

The plugin may also be used as the basis for an index, directory or catalog.

The database is made up of fields, and each field may be one of several types that are uniquely suited to store a particular kind of information. These fields can also be divided into groups to help organize the information. Fields can also be provided with help text to assist users in filling out the form.

Take a look at this video overview of the plugin contributed by user Fiona Blinco

Plugin Technical Support

Participants Database is a complex plugin and getting the most out of it often requires some basic technical knowledge. There are three main ways I support the plugin: the public forum, the comments section here, and by email.

Please read through the documentation and relevant support conversations before posting questions, you may find your questions have already been answered.

My support email is published in the plugin, please use it if you have questions or links you don’t want made public, or for special requests. While I try to provide good support for free, please remember this is what I do for a living and my time is limited. I am usually available to provide plugin customizations, so please contact me with inquiries about extending the functionality of the plugin.
>>WordPress Plugin Support Forum

2,796 thoughts on “Participants Database

  1. Thanks very much for the great plugin!
    It seems to be working how I want, except for

    was throwing an error when I inserted it into the template (when I was trying to provide the edit link).
    Note, the code was copied exactly from the advice in
    I fiddled around with various attempts at solving the problem – it was almost like $record was not instantiating properly…

    I managed to get it working in the end using some other code:
    $participant_data = Participants_Db::get_participant($this->record->record_id);
    $single_record_uri = Participants_Db::get_record_link($participant_data[‘private_id’]);

    But I thought it was worth noting here, in case anyone runs into problems, or in case it is an easy fix.

    I am running WP 4.5.2.

    Thanks again.

    1. Daniel, the error may be because the “Participant Record Page” setting is not set to the page where the [pdb_record] shortcode is. Take a look at the settings under the “record form” tab.

  2. I have just updated to WP 4.5.1 (I know should have looked at plugin compatibility first!) and now find the dropdown button in my signup form no longer works. Didn’t know if you where aware of this and if any updates where due in the near future?

    Many thanks.

    1. I’m not aware of any compatibility issues with WP 4.5.1. You say your dropdown no longer works…what are you seeing?

      1. Thank you very much Roland for this brilliant plugin! Like Oliver above I had some issues with sorting and searching on WP 4.5.1. I have moved up to WP 4.5.2 and still I can’t sort the database records. Here is my website link :

        Another Question is, on another website I am using this plugin, ( , the records bar is vertical instead of being horizontal. I am not sure what I did wrong there.

        Many thanks for your help.

        1. Hi Phil,

          The reason your list won’t sort or search is your theme (or another plugin) is altering the HTML with javescript. Specifically, it’s replacing the normal dropdown with whats called a “select 2” dropdown. It’s a UI enhancement, but the plugin code is not compatible with it. I suggest you ask around the theme support forums for how to disable the feature on this page.

          On your other site, the pagination control is affected by the theme CSS. Often you just need to add a new CSS rule to change the display mode of the elements like this:

          .pdb-pagination li {
          display: inline-block;

  3. Hi Roland !

    I just wanted to find out how can I insert a placeholder shortcode like [ record_link ] inside the sign up response in which the registered user will be brought to only view their submitted data during the sign-up process ( non-editable )

    i.e their single record page using the [ pdb_single ] shortcode ?

    I hope this query could make sense..sorry for my bad english..

    Thanks Roland


    1. Sam, you can include the values for any field in the “signup thanks message” using the tags…that is probably the easiest way to do it. Using a shortcode is much harder because you need to access the ID of the new record using custom code.

  4. It seems that new version auto-disables itself if PHP 5.3 is the ONLY installed version of PHP. I have been using this plugin for a couple of years with no issues but now the features this plugin offers our site are disabled.

    According to your documentation, this has been tested to 5.4, which I have active, but it keeps auto-disabling. Is this a bug in the latest release???

    1. As an aside I changed the variable from 5.3 to 0… This seemed to correct my issue with the plugin not loading even though I am greater the 5.3…. It may be an issue with what my provider is reporting back to you code when it does a version query… I am hosted on Blue Host..

    2. Hi David, sorry to hear about your issue. I have tested this on several different PHP versions, but it’s possible in your setup that the version is not being reported accurately. The reason it disables itself is because if you try to run the plugin under PHP 5.2, it crashes the site, so I don’t want to do that to people. I may need to consider a solution for cases like yours where the php version check should be overridden. I also need to take a look at what circumstances might lead to the PHP version not getting reported correctly. Thanks for letting me know about this.

  5. My apologies if this question has been answered. I have searched before putting it here though.

    I am trying to email to a user the results a search he has performed,

    I was able to setup a search form and send the results to another page.

    I would like to email the first name, last name etc.. as they appear on the search result page:





    Basically they would be an email form button under the above table with the input fields as above. Clicking the email submit button would send first name etc… to the user email.

    Is that possible, and if yes, how could I do it?

    1. There isn’t anything like that built into the plugin, so doing something like emailing search results would require a custom script. If you can find a WordPress plugin that will send a page as an email. that might do it for you…but I don’t know if such a plugin exists.

  6. I sincerely apologize if this is written in documentation already.. I have spent the past hour combing the manual and forums and don’t see an answer. I am grateful for this amazing plugin! My question:

    I want to display the date the participant’s record was last updated within their profile. I assume that since this is automatically recorded for the admin as the date_updated field, that I should not need to create a custom Member Information Field for it since that would be manual and I would prefer this to be automatic.

    What is the best way to achieve this?

    Ideally when I import an updated CSV it would change the date updated for the records that I altered, and not any that I did not alter.

    Thanks again!

    1. Hi Janet,

      It is possible to display the date updated field in the profile, but you must put it into the “fields” attribute of the shortcode. This means you have to put in all of the fields you want shown, unfortunately.

      [pdb_single fields="first_name,last_name,date_updated"]

      It’s also possible to use a custom template and add a display for that value into the template.

      When you import a CSV, just don’t include the “date_updated” field, and it will generate it when the record is imported.

      1. Sincere thanks, Roland! Just sent you a small token of appreciation. Thank you for the quick reply and have a wonderful weekend! x

Leave a Reply

Your email address will not be published. Required fields are marked *