Product Support

Custom Template Folder

Provides an update-safe location for all your Participants Database custom templates. Version 2 adds Multisite support.

Product Setup

This plugin creates a location for your Participants Database custom templates in the content directory of your WordPress site. Typically, the location will be:


In some cases, the content directory looks different than that, this add-on will place the participants-database-templates folder in whatever the designated content directory is for your WordPress install. Ask your developer or hosting tech support if you don’t know where that is.

For multisite installs, each blog will have it’s own folder within that folder for custom templates.
This plugin is not compatible with the original Custom Templates Folder plugin. See below for instructions if you were using the version 0.3 plugin.

Multisite Support

When using this plugin with multisite, each site will have it’s own directory for templates. Each multisite directory is named using the ID of the blog…for instance:


and so forth…

Use with Other Participants Database Add-Ons

Some add-ons offered here use their own templates, for example Field Group Tabs or Member Payments. The Custom Templates Folder add-on works with all these add-ons as well. The main difference is where you get the default template to start with when creating your own custom templates: each add-on that uses special templates will have it’s default templates in a folder named “templates” in the plugin folder. See the add-on’s instructions for the details.

Migrating from version 0.3 to version 2

If you were using the original (version 0.3) of the Custom Template Folder add-on for Participants Database, you must make some changes before using this one. Nothing bad will happen if you don’t, it just won’t work as expected.

  1. This will temporarily interrupt proper display of your Participants Database custom templates.
  2. Install (do not activate) the new Custom Template Folder 2 plugin
  3. Deactivate (but do not delete) the original Custom Template Folder (version 0.3) plugin
  4. Now activate the new Custom Template Folder 2 plugin
  5. Using FTP (or your hosting files manager), locate the template directory in the original Custom Template Folder plugin. The path will in most cases be:
  6. That path is where all your custom templates will be
  7. The 2.0 plugin creates a new directory in the content directory of your site. Typically the path will be:
  8. Move your templates from the old plugin templates directory into the new location
  9. Check your displays, your custom templates should be active again
  10. Once you know the custom templates are working, you can remove or delete the original plugin.

Support Discussions for Custom Template Folder 2.0

  • Hi Roland,
    I’m doing it step by step as you suggested, but am having difficulty getting the custom template program to accept any of my if statements. e.g.
    title==”Daily Actions”) : ?> {
    group->print_title(); ?>
    } ?>

    Can you tell me what I’m doing wrong?

    • title ==’Daily Actions’) : ?> {
      group->print_title(); ?>

      Sorry, it seems to have erased some of my code.

    • I’m sorry, Ivy, it’s not really possible for me to debug your code. I don’t see anything wrong with what you posted, but it is up to you to manage your own custom code. I can help you with using the plugin and its functions.

  • For some reason my custom template is not working.

    I have created a custom template:


    I’m using this shortcode on the page:

    [pdb_single template=item]

    However, I’ve confirmed via the debug mode that the page is still using the default template:

    <!-- template: participants-database/templates/pdb-single-default.php -->

    Any idea what the issue might be? I’m using

    Participants Database v.


    Participants Database Custom Templates v.2.4
    • Everything looks right that you posted, so other things that can go wrong here are:

      problem with the shortcode that you can’t see…use a shortcode block or if not, check it using text mode to make sure there are no stray characters in there messing up the shortcode

      file permissions…make sure the file is readable to the WordPress application. If you are using your control panel account to upload the file, this is usually automatic, but permissions may be preventing the file from getting loaded.

      page caching…clear the cache or suspend it for this page

    • also you can try enabling the plugin debugging (main plugin settings, advanced tab), the debugging log may provide more detail on what’s going on.

      • Thanks so much for the quick response! The problem was both the file permissions and some stray characters in the shortcode. Changing file permissions and using the text editor fixed it right up.

  • Is it possible to generate 2 separate lists, each displaying different fields? I want one for the Teams with info pertaining to the team, which I have already generated, and it looks good. But can I have another list for the Participants, with info pertaining to the individual record–without showing all the team info? And vice versa for the Teams list — without showing all the individual info. SInce both are controlled by Manage List Columns, I don’t know how to control which fields show on which list.

    • You can use the “fields” attribute in the list shortcode to determine which fields are shown. The Manage Columns setting is just the global default.

      • I have this shortcode for the Participants list, but it shows all the fields in my Manage List Columns regardless of what I put in the shortcode. Is there something wrong with my shortcode?
        [pdb_list search=true sort=true display_count=false list_limit=10 orderby="first_name,last_name,team,affiliation,points_for_one-time_activities,points_for_daily_activiites,total_points" order="asc,asc"]

  • 2 questions:
    1. I added the codes to the Custom Participant Record template, but the site gives me a critical error. How do I know if it’s even looking at the custom file, or if my code is bad. I have debugging on but I don’t see anything there.
    Here’s what I added in segment in the field loop.
    field-group==(“One-time activities”) && $this->field->value()==”Completed”) {
    $points_for_one_time_challenges = $points_for_one_time_challenges + 25; }

    field-group==(“Daily activities)) {
    $points_for_daily_challenges = $points_for_daily_challenges + ($this->field->value() * 10); }
    2. if I want to do a list by team, which can have up to 15 people, and not have it list everyone, I would copy the pdb-list-detail.php over to the participants-database-templates folder, to edit it there, right?

    • I figured the answer to the second question. I think that if I can count the number of members on each team and add up the total points for that team in the record template, I don’t need a custom list any more. So the only problem left is getting the custom record template to work.

      • If there is a basic syntax error in your template it can fail without any error message. The only way to fix that is to look very closely at your custom template for the problem.

        At least it indicates your custom template is getting used, so you don’t need to think about that.

    • Showing a list from a specific team is best done using the List Shortcode Filter, you probably don’t need a custom template. Check the linked article for details.

  • I want to create a single result search on a page.
    The goal is to allow users search for availability of a business name before ordering.
    Please any help

    • How you do this really depends on how you want it to work. It is possible to do something like this with nothing special: just set up the list with the search on a single field (using the “search_fields” attribute) and use the “suppress” attribute to prevent the list from showing before they search. If they get a result, then the name is taken. The details for setting that up are described here, go to the “List Shortcode Attributes” sesction on that page.

      If you want some special functionality with your results, you will need to use a custom template, and you will need to have php skills to create your custom template.

  • Thanks, I would like limit the search to only 2 in the drop down.

    At the moment I have the following in the drop down for the search :

    Name , city, private Id and so on, however I will love to add only Name and Private ID in the drop down so people can only search the private ID and Name. Thanks

  • Hi I love your Plugin however I add a challenge, I used a custom template because the default search result was not reponsive.

    However after using the template it shows well but I would like to surpress the search result until the user search for it, at the moment it shows the list by default, how do I add it? Below is the shortcocde [pdb_list template=single search=true]

    • Is the “single” template one you developed yourself? There isn’t such a template built into the plugin for the list shortcode. There are two responsive templates available for the list: “responsive” and “flexbox” or of course, you can create your own.

      To suppress showing results results before a search is performed, use the “suppress” attribute, like this example: [pdb_list search=true suppress=true]

      • How can I use the responsive template? Kindly share a link

        However I used the surpress code it worked but the result did not show on the user search, it only reloads. Any idea what the issue could be?

        • This is explained on the Using the List Shortcode page. You can choose the template using the “template” attribute in the shortcode, like this:

          [pdb_list template=responsive]

          which you can combine with other attributes, for example:

          [pdb_list template=responsive search=true suppress=true]

          post a link to your page so I can see what the problem is.

        • Thanks so much your answers worked, but one more thing where and how can I change the heading “Participant Info” that appears in search Result. I was to change it to something else. Thanks

        • This is found on the Manage Database Fields page, go to the Field Groups tab, it is a field group title.

  • Dear Sirs
    Not able upload any image in the profiles of the participant-database
    I tried to upload various images to the profiles of the users listed in teh database,
    I tried several .PNG .JPEG and .JPG images with all kinds of sizes
    Nothing succeeded
    The system keeps responding with an error message

    For “Photo”, you may only upload image files like JPEGs, GIFs or PNGs.

    Can you please inform me about the error / solution please

    • Check the “Allowed File Types” setting for Participants Database under the general tab. Only file types (actually file extensions) that are in the list can be uploaded.

  • Is there a way to have a link to a photo appear as the image, rather than a link to the image. Obviously you can have images, because a photo filed is there. But I’d rather not upload each photo.

    • This is a really good idea that I have had on my list for a while, just haven’t gotten around to implementing it.

  • WordPress keeps changing & to & in the search and list shortcodes. Will the shortcodes work that way? I have tried protecting them with [raw}…[/raw] but that doesn’t work. Ideas?

    • The best way to prevent this is to edit and save the page in text mode. You may find, however, that the shortcodes work OK with the &amp; they will convert the entities.

Got a Support Question?

You have to agree to the comment policy.

Would you like to be notified of followup comments via e-mail? You can also subscribe without commenting.