In the previous tutorials, we used Meta Box and page builders to create a team members page. However, if you don’t use any of them or want to find another way to do it, this post is for you.

In this practice, we’re going to use a new method - using Meta Box only with MB Views.

This is the sample:

Sample for the Team Members Page with Meta Box only.

Video Version

Before Getting Started

Similar to previous tutorials in this series, each member’s information will be preserved in a post and displayed as a name card. The member's name and avatar are the title and featured image of the post, respectively. Other information such as position, Facebook, Instagram, and Mail will be saved in custom fields.

To do it, we need Meta Box and its extensions:

  • Meta Box core plugin: This is the framework to create custom fields and custom post types. It’s free and available on wordpress.org;
  • MB Custom Post Type & Custom Taxonomies: It’s a free extension of Meta Box to create custom post types;
  • Meta Box Builder: This Meta Box premium extension provides a UI in the back end to create custom fields easily;
  • MB Views: it’s an extension of Meta Box to create WordPress templates without touching the theme’s file as well as any page builders. It also generates a shortcode so that you can display the templates anywhere you want.

Step 1: Create a New Post Type

We need to create a custom post type and custom fields for the post type. If you read previous posts in the series, just skip this step.

In the Admin Dashboard, go to Meta Box > Post Types, then create a new post type for the members.

Create a new custom post type for the Team Members

Publish and you will see a new menu in your dashboard.

The result appears after creating.

Step 2: Create Custom Fields for the Post Type

Let’s create custom fields for the position, Facebook, Instagram, and mail. Go to Meta Box > Custom Fields.

Add new fields

For the member’s information, I’ll create some following fields:

Fields Type Note
Position Select To add some options for users to choose from instead of typing.
Facebook/Instagram/Mail URL To save the link of the social networks

Custom fields for Team Members

In the event that you want to add more information, just create additional fields as you go.

After creating all the fields, move to the Settings tab of the field group. In the Location section, choose the Post Type and select Team Member to apply these fields to this post type.

Set location for the custom field as the created post type

Now, you will see all the created fields when creating a new post in the Team Member post type. Add some member’s information for the test. We need them for the preview in the next step.

The custom fields display in the post editor

Step 3: Create a Template using MB Views

In the Admin Dashboard, go to Meta Box > Views > Add New to create a new template.

Create a new template.

In the Template tab of the view, add some code:

{% set args = { post_type: 'team-member', posts_per_page: -1, orderby: 'date', order: 'ASC' } %}
{% set posts = mb.get_posts( args ) %}
{% for post in posts %}
    {{ mb.get_the_post_thumbnail( post.ID,'medium' ) }}
    {{ post.facebook }}{{ post.instagram }}{{ post.mail }}
    {{ post.post_title }}
    {{ post.post_content }}
    {{ mb.rwmb_the_value( 'position', '', post.ID, false ) }}
{% endfor %}

Add new code to the template.

Let me explain about this code:

{% set args = { post_type: 'team-member', posts_per_page: -1, orderby: 'date', order: 'ASC' } %}

This code is used to declare the variable that obtained posts from the Team Member post type. The posts_per_page: -1 means that it will get all the posts and display them in one page. The orderby: 'date', order: 'ASC' are used to define the order of the posts.

{% set posts = mb.get_posts( args ) %}

This function is to get the posts data from the variable that was declared above.

{% for post in posts %}

This is a loop to display all the posts in the Team Member post type.

{{ mb.get_the_post_thumbnail( post.ID,'medium' ) }}

This function is used to get the avatar of the member which is the featured image of the post.

{{ post.facebook }} | {{ post.instagram }} | {{ post.mail }} | {{ post.post_title }} | {{ post.post_content }}

This kind of function is used to get the data from the fields including both default fields of WordPress and custom fields. facebook, instagram, mail is the ID of the corresponding fields

For the position information, it is saved in a field in the type of Select with a special kind of data. So we use the following function to get its data.

{{ mb.rwmb_the_value( 'position', '', post.ID, false ) }}

The rwmb_the_value() is to get the label of the options in the Select field. In the event you want to get the value of the options, use this rwmb_meta()

To style the template, I used some Div classes and added them to the code.

Use some Div class to style the template.

You can refer to all the code here.

After adding code, move to the Settings section, set this template as the Singular type and choose Location as Page. Then, select Meet The Team page to apply this template to the page.

Adjust the template and apply to the page.

Go to the Meet The Team and you will see all the data has been displayed already.

Result after applying the template.

Step 4: Style the Page

Still in the created template in the Views. Move to the CSS tab, then add some CSS code to style the page.

Style the page.

All the CSS code that I used is on Github. Refer to it for more details.

Update it and see the result on the frontend.

Result of Team Members Page on the frontend.

Last Words

We’ve gone through many methods to create a team members page. Hope that this series is helpful for you even if you are using page builders or not.

If you have any questions or ideas for any further tutorials, feel free to leave a comment. Good luck!

Other case studies you might be interested in

  1. Create A Dynamic Landing Page in WordPress Using Custom Field
  2. Create a Filter to Find Hotels by Location
  3. Create an OTA Website Like Booking.com with Meta Box Plugin - P1: Create a Page to Introduce Hotel Rooms
  4. Create an OTA Website Like Booking.com with Meta Box Plugin - P2: Create Filters on the Archive Page
  5. Create an OTA Website Like Booking.com with Meta Box Plugin - P3: Create Filters for Single Hotel Pages
  6. Create Dynamic Favicon in WordPress using Meta Box plugin
  7. Create Posts Series in WordPress Using Meta Box
  8. Display a User List On the Frontend with Meta Box
  9. Display The Latest Products Section - P2 - Using Meta Box and Elementor
  10. Display The Latest Products Section - P3 - Using Meta Box And Oxygen
  11. How to Add Custom Fields to Display Banners using Meta Box Plugin
  12. How to Add Guest Author in WordPress using Meta Box (Part 1)
  13. How to Add Guest Author in WordPress using Meta Box (Part 2)
  14. How to Add Related Posts to WordPress Using Meta Box
  15. How to Build a Hotel Booking Website Using Meta Box - P1
  16. How to Build a Hotel Booking Website Using Meta Box - P2 - Booking Page in Backend
  17. How to Build a Hotel Booking Website Using Meta Box - P4 - Booking Management Page
  18. How to Build a Hotel Booking Website Using Meta Box – P3 – Booking Page for Customer
  19. How to Create a Classified Ads Website using Meta Box
  20. How to Create a Product Page using Meta Box Plugin
  21. How to Create a Recipe with Meta Box Plugin
  22. How to Create a Simple Listing - P2 - Using Meta Box and Bricks
  23. How to Create a Team Members Page - P1- Using Meta Box and Elementor
  24. How to Create a Team Members Page - P2 - Using Meta Box and Oxygen
  25. How to Create a Team Members Page - P3 - Using Meta Box and Bricks
  26. How to Create a Team Members Page - P4 - Just Meta Box
  27. How to Create ACF Flexible Content Field with Meta Box
  28. How to Create an Auto-Updated Cheat Sheet in WordPress
  29. How to Create an FAQs Page Using Meta Box
  30. How to Create Buttons with Dynamic Link using Custom Fields
  31. How to Create Category Thumbnails & Featured Images Using Custom Fields
  32. How to Create Download Buttons Using Custom Fields with Meta Box Plugin
  33. How to Create Menu for a Restaurant - P1 - Using Meta Box and Elementor
  34. How to Create Online Admission Form for School or University
  35. How to Create Online Reservation Form for Restaurants using Meta Box
  36. How to Create Taxonomy Thumbnails & Featured Images - P2 - Using Meta Box and Oxygen
  37. How to Display Images from Cloneable Fields - P1 - with Gutenberg
  38. How to Display Images from Cloneable Fields - P2 - with Oxygen
  39. How to Display Images from Cloneable Fields - P3 - with Elementor
  40. How to Display Opening Hours for Restaurants - P1 - Using Meta Box + Gutenberg
  41. How to Display Product Variations - P1 - Using Meta Box and Gutenberg
  42. How to Display Product Variations - P2 - Using Meta Box and Oxygen
  43. How to Manually Reorder Posts with Meta Box
  44. How to Use Custom HTML Field to Output Beautiful Texts or Output Custom CSS

1 thought on “How to Create a Team Members Page - P4 - Just Meta Box

Leave a Reply