Get a final 25% off before it's too late! Code: LASTCHANCE
Buy Plugins

Complete guide: How to create a student database

May 24, 2022

If you enroll students in courses or programs – whether that’s through an educational institute, school, university, tuition, or private classes – you probably maintain a student database such as a Microsoft Access database, Microsoft Excel, or Google Sheets. It might contain basic information about your students, such as their names, contact information, and the courses they’re enrolled in.

You might consider displaying this information on your site’s front-end to make it easily accessible to students, parents, and staff members - either publicly or within a password protected private area. One way to do this is by using the Posts Table Pro plugin to create a simple student database.

Preview of student database created using Posts Table Pro and Gravity Forms

In this post, we’ll explain why you need a student database plugin and how to choose the right one for your needs. We’ll also walk you through a step-by-step tutorial on how to create a student database on your WordPress site that:

  • Displays all student profiles on a single page in a neat and organized table layout.
  • Lets users look up students using built-in search, sort, and filter options.
  • Enable admin staff to update student information directly from the front-end of your site.

Let’s get started!

Why you need a WordPress student database plugin

Every school, college, and university needs to create a database of all their students. This directory typically contains student names, student ID, email, photo, date of birth, year of graduation, and department. Creating a physical record of all your students is useful for administration purposes and so is storing that information digitally on your website.

An online student database is convenient, can’t be misplaced, and can easily be updated. For WordPress users, the best way to create one is by using a WordPress student database plugin that offers these features:

  • A simple and easy way to add individual students and list them in one place.
  • Option to add as many additional fields as you need.
  • Searching and/or filtering functionality to enable users to quickly find what they’re looking for.

Once you have a student database in place, you can use it as a data system or a student information system for better school management.

Introducing Posts Table Pro

Fortunately, finding the best WordPress student database plugin isn’t as difficult as it may seem. Our Posts Table Pro plugin is a robust solution that meets all of the requirements as mentioned above. More specifically, it lets you create a searchable and sortable student database that can be modified to fit your particular needs then displayed on the front-end of your WordPress site.

The easy way to create a front-end student database in WordPress.

You’ll be able to include as much information as you want in your student records using a customizable shortcode, easily organize everything, and enable users to quickly find the student they’re looking for. Plus, by purchasing this plugin you’ll get expert support in case you need help getting started.

Key features on offer with Posts Table Pro:

  • Supports custom post types, fields, and taxonomies, which are perfect for creating a student custom post type with extra fields to save information about each student.
  • It offers easy-to-use search and sort features making it easy for users to find a specific student in the database.
  • Option to embed media files that you can use to display photos of students in the database on your site’s front-end.
  • It offers several customization options for modifying the look and feel of your WordPress student database in any way you like!

How to create a student database using Gravity Forms and Posts Table Pro

In this tutorial, we’ll show you how to create a functional front-end student database in WordPress. You can read it from start to finish or jump to the specific steps you need:

  1. Use Gravity Forms to create a submission form
  2. Store the student information as a custom post type in WordPress
  3. Display the student database in a table on the front-end of your website

Step #1: Use Gravity Forms to create a submission form (optional)

Note: This step is optional. If you're happy adding students directly in the WordPress admin, then you can skip to Step 2

The first thing you need to do is use Gravity Forms to create a submission form that new students can use to upload their information.

Log in to your WordPress website and navigate to FormsNew Form from the admin panel.

Add a new student using Gravity Forms

In the Create a New Form pop-up, enter the form’s title and a brief description. Click the Create Form button to proceed.

Next, we’ll add relevant fields to the submission form depending on the type of educational institute you’re creating the student database for.

For example, if you’re creating a student database of high school students, you might consider asking for the student’s name, date of birth, locker number, class section, student attendance, school district, and teacher name. However, if you’re creating one for university students, you might instead ask for the student’s name, contact information, department, and year of graduation. And if you have a global student body, you could include information about the student's city (New York or Toronto) and country (the United States or Canada). This should give you a window into some of the student attributes you can include in your student database.

Here are some of the most common form fields to help you get started with a step in the right direction:

  • First and last name
  • Email
  • Student ID
  • Date of birth
  • Year of graduation
  • Student photo

First name, last name, and email address

For First and Last Name, add the Name field from Advanced Fields.

Gravity Forms form builder name and email fields

Similarly, for Email, use the Email field (under Advanced Fields).

Student ID

For student ID simply add a Number Field (under Standard Fields) if you assign numeric student IDs. However, if your student IDs are alphanumeric, you’ll have to use a Single Line Text field instead. For alphanumeric student IDs, you can also choose to add an Input Mask.

Gravity Forms form builder single line text field

Date of birth and graduation year

For Date of Birth, add a Date field from Advanced Fields. Rename the field to Date of Birth and change the date format to yyyy/mm/dd.

Gravity Forms form builder date field

For the Graduation Year field, you can create Radio Buttons (under Standard Fields) instead of a date picker.

Gravity Forms form builder radio buttons field

Student photo

For Student photo, use the File Upload field (under Advanced Fields). Here’s what you need to do:

  • Change the Field Label to Student Photo.
  • Type jpeg, jpg, png in the Allowed file extensions option. This will restrict users from uploading other image formats.
  • Enter a Maximum File Size value (such as 5MB or 10MB).
Gravity Forms form builder file upload field

Once you’ve created the submission form, click the Update button to proceed. Your submission form might look something like this:

Gravity Forms submission form preview

Step #2: Store the student information as a custom post type in WordPress

In Step #1, we showed you how to create a submission form using the Gravity Forms plugin that students can use to submit their information. Once a student fills out the submission form, you’ll receive this information via email and it will also be stored in the WordPress database.

In this step, you’ll learn how to create a custom post type and store the information you collect from students directly in custom posts on your WordPress website. This way, you won’t have to manually enter the data to your site.

Note: We don’t recommend storing user-submitted data as regular WordPress posts because it will quickly clutter up your entire website. Instead, we suggest that you create a dedicated custom post type for storing student data. Since we want to create a student database from user-submitted data, we can create a ‘Students’ custom post type. This way, you’ll be able to organize student data separately from other site content.

To create a custom post type that works seamlessly with the Gravity Forms plugin, we recommend using the free Gravity Forms + Custom Post Types plugin. Here are the steps you need to follow to create a custom post type and integrate it with your Gravity Forms submission form:

  1. Install the Gravity Forms + Custom Post Types plugin to your WordPress website and activate it.
  2. If you haven’t already created a custom post type, use the free Easy Post Types and Fields plugin to do this. For complete instructions, check out this step-by-step tutorial on how to create a custom post type then come back here to continue this tutorial.
  3. Finally, you need to map your form fields to the custom post type using the instructions provided on the plugin’s page under the FAQ section (How to map a form to a custom post type).

Or if you don't need a way to submit students from the front-end, then you don't need to bother with Gravity Forms. Instead, just go to Students → Add New in the WordPress admin and add the students from there.

Step #3: Display the student database in a table on the front-end of your website

By now, you should have a submission form that’s linked to a custom post type on your WordPress website. In other words, whenever a student fills out the form and submits their entry, the student data should automatically be populated into your WordPress site as a custom post.

Next, you’ll learn how to display the user-submitted custom posts on your site’s front-end in a dynamic and organized table layout. We’ll use the Posts Table Pro plugin to do this.

Install Posts Table Pro to your WordPress website

If you haven’t done so already, get the Posts Table Pro plugin and install it to your WordPress website. You’ll receive the plugin files and license key in a confirmation email.

Posts Table Pro license key

Head over to SettingsPosts Table Pro from the WordPress dashboard. Enter your license key in the License Key field to activate it. Click the Save Changes button to proceed.

Set the post type option

From the same screen, you can make changes to how your student database looks and functions on the front-end.

Under the Posts selection section:

Set the Post type option to your custom post type (e.g. student) using the dropdown menu.

Posts Table Pro post type setting

This way, the Posts Table Pro plugin will know where to grab the student data from.

In addition to this, you can also modify other table settings such as table content, table loading options, sorting options, and table controls from the Settings screen.

Check out the documentation for a detailed explanation of each setting!

Create a page to display the student database

Finally, we’ll create a page where we want to display the student database. Head over to PagesAdd New from the WordPress admin panel. Give your page a suitable title, such as the student database.

Since we’re displaying data from a custom post type, we’ll need to use the custom field columns. For example, the custom field for student’s first name maps to first_name as it’s stored in the Students custom post type. So, to display the student’s first name, we’d enter cf:first_name as a column entry.

You can learn more about how to use custom fields with Posts Table Pro here!

Following our submission form, we’ll be displaying the following information in our student database:

  • Student photo
  • Student ID
  • First name
  • Last name
  • Email
  • Date of birth
  • Graduation year

Our Posts Table Pro shortcode would be: [posts_table columns="cf:photo,cf:student_id,cf:first_name,cf:last_name,cf:email,cf:date_of_birth,cf:graduation_year"]

For Gutenberg:

Posts Table Pro student database shortcode in Gutenberg

If you’re using the Gutenberg editor, click the (+) icon in the top-left corner of the screen and add a Shortcode block to the text editor. Next, enter the Posts Table Pro shortcode.

For classic editor:

Posts Table Pro student database shortcode in the classic editor

However, if you’re using the classic editor, simply enter the Posts Table Pro shortcode into the text editor.

Click the Publish button to proceed.


Your student database should look something like this:

Posts Table Pro student database

Play around with all the options in Posts Table Pro, such as adding search filters above the table.

And if you want to collect additional information from students such as their ...

  • Department (Department of Education or Department of Information Technology) or
  • Majors (Small Business Sales Management or Corporate Finance)

... your table layout might look something like this:

Posts Table Pro student database with extra fields

Can students edit entries after submitting them?

Unfortunately, Gravity Forms doesn’t give users the option to let students edit entries or other information after they’ve submitted them through the submission form. However, you can make edits using Editus – a WordPress front-end editor plugin.

To achieve this, the students would have to click through to the single student profile page on your site. This is necessary because they can’t make changes to entries from within the Posts Table Pro table itself. However, they will be able to edit the content on the single post page as necessary.

Can I display Gravity Forms entries on the front-end without creating a custom post type?

The Posts Table Pro lets you display posts or custom post types in a table layout on your site’s front-end. Since form submissions are stored in a separate database field by Gravity Forms, you can’t list entries directly in a table layout using Posts Table Pro. The information needs to be stored as a post or custom post type.

This is why you’ll need to follow the instructions provided in the tutorial section above if you want to automatically store the information as a custom post type and then display these entries on the front-end in a table layout.

Can I import students in bulk?

Absolutely. You can mass-import students into the database using any WordPress import plugin such as WP All Import. This saves having to add each student individually, either via a front end form or the WordPress admin.

Create a private student database

Finally, let's talk about how you hide your WordPress student database and make it secure. Some student directories are available to the public, and that's fine. However, others need to be hidden from public view.

The easiest way to protect your student database is to password protect the page where you're listing all the students. You can easily do this by setting the page to 'Password protected' and giving the password to your students and staff.

Password Protect Page WordPress


The Posts Table Pro plugin offers several useful features for private or public schools (elementary schools through high schools), non-profit educational institutes, colleges, and universities to create a searchable and filterable student database. By following the step-by-step instructions provided in this article, you’ll be able to create an all-in-one flexible student database (or student management system) that can easily be searched, sorted, and filtered directly from the front-end. In addition to this, you won't have to worry about creating student accounts or giving students access to your site's back-end.

The easy way to create a front-end student database in WordPress.

What are some of the different fields you’re looking to display in your front-end student database? Let us know by commenting below!


  1. Dominic Sarpong
    October 3, 2022 Reply

    Hi Dear,
    My name is Dominic and am from Ghana 🇬🇭. I'm an IT student in my final year and I was to create a database system for my childhood school. But I have no idea of how to start, please I need help before October ends and I believe Barn2 is the best place to come.

    • Carlo
      October 4, 2022 Reply

      Hi Dominic, thank you for the comment. The article has step-by-step instructions that you can follow to accomplish your project. I recommend getting the plugin and trying it out to have an initial idea on how to approach the task and eventually complete it. If using a premium plugin is not an option, you can look into our free version Posts Table with Search & Sort. Some options/features will not be available but the core idea and approach are the same. Thank you.

  2. Ahmad Shahir Sharifi
    June 12, 2022 Reply

    i want to make a detabase for my student.

    • Edge
      June 15, 2022 Reply

      Hi, Ahmad. Thanks for your comment. You've come to the right place, as our complete guide shows you everything that you might need in order to do so. Should you have any questions, just let us know. You can also get in touch with us via our dedicated Support Center. Best regards and have fun!

  3. samson munta
    November 26, 2021 Reply

    can i get free wordpress

    • Edge
      November 26, 2021 Reply

      Hi, Samson. You can get free WordPress in a few ways:

      1. Sign up for a free WordPress site from wp.com, albeit I don't believe the free account/site allows for uploading/installing premium themes and plugins & almost all of the latter are built for self-hosted WordPress sites.
      2. Download WordPress for free from wp.org and install it on a local site.
      3. Get a web hosting account from providers such as those mentioned at https://wordpress.org/hosting/ on which you can install self-hosted WordPress sites for free, as doing so is included with your web hosting package.

      I hope this makes sense and helps. Have fun!

      • Ali Ibrahim
        October 6, 2022 Reply

        Please help me to create a database for banking

        • Carlo
          October 7, 2022

          Hi Ali, thank you for the comment. We'd like to know more about how we can help you. Kindly contact us through our Support Center for best assistance. We look forward to hearing from you. Cheers.

  4. Rj
    December 13, 2020 Reply

    Hey Dear!
    I'm RJ from India.
    I'm an IT student and I need this type of student database as my final year project. I can't code perfectly right now to build a website. I need your help to create a perfect student database.

    • Edge
      December 15, 2020 Reply

      Hello, RJ. Thanks for your interest in creating this use case of our Posts Table Pro plugin for WordPress. All the best in your final year and have fun.

      You can install and use WordPress locally on your machine for free, then obtain the other plugins described in our article and use them without the need code anything manually. You can try Posts Table Pro on your site completely risk-free, and choose between a 14-day Free Trial or a full 30-day money back guarantee. The latter lets you buy the plugin and try it for up to a month, and get a full refund if you're unhappy with it or if it doesn't suit your needs (or once you've completed your project).

      I'll be happy to assist you with any questions that you might have. What exactly do you need help with?

      You can also get in touch with us with your queries via our dedicated Support Center.

Please share your thoughts...

Your email address will not be published.