Are you a Pods user that wants to switch to Meta Box plugin without missing any custom post types and custom fields data created by Pods? Don’t worry, it’s easier than you’d imagined! In this article, we’re going to move all custom post types and custom fields data from Pods to Meta Box within minutes.

Tip: a tutorial video is included at the end of this post.

How Do We Move Custom Post Types and Custom Fields Data?

Both Pods and Meta Box use two WordPress standard functions: get_post_meta() and update_post_meta(). Besides, these two plugins save the custom fields' data in the same way: save each field in a line on the post meta table with the meta_key field’s ID and the meta_value field’s value. Therefore, to move data from Pods to Meta Box, we just need to create new fields in Meta Box that have the same IDs as the corresponding fields in Pods. As for the custom post types, the method is the same.

To give you an example, I’m going to move data of the Project custom type and its custom fields from Pods to Meta Box.

Note: I’m going to move only the data of custom fields for posts, but you can still apply this method for terms and users!

Before Getting Started

In addition to Meta Box core plugin, I also use the following extensions of Meta Box. They provide me with UIs to work with custom fields and custom post types faster and more conveniently:

  • MB Custom Post Types & Custom Taxonomies (free): use this plugin to create custom post types easily and effortlessly. It can run without installing Meta Box core plugin. Otherwise, you can try Post Type Generator.
  • Meta Box Builder (paid): use this extension to create custom fields quickly and conveniently right on the back end. To use this extension, you have to install and activate Meta Box plugin first.

If you don’t want to use the premium extension Meta Box Builder, you can code manually or create custom fields with the Online Generator tool of Meta Box. Read the documentation of the Online Generator tool here.

Step 1: Get the Post Type’s Slug and Custom Fields’ ID in Pods

I already have the Project post type created with Pods. Its slug is project (Name column):

Get the Post Type’s Slug and Custom Fields’ ID in Pods plugin

In the Project post type, there are two custom fields. Their IDs are project_name and project_description.

The custom fields of the project post type in Pods

Remember the post type slug and custom fields’ ID, we will need them in the next step.

These are posts in the Project post type created by Pods:

Posts in the Project post type created by Pods plugin

And these are the custom fields in the Project post type:

Custom fields in the Project post type

Now, deactivate Pods plugin. Once you finish, the data of Pods is still in the database. You just need to use Meta Box to get these data.

Next, activate Meta Box plugin and its extensions (MB Custom Post Types & Custom Taxonomies and Meta Box Builder).

Step 2: Create a Custom Post Type and Move Its Data from Pods to Meta Box

In this step, you need to create a new custom post type with Meta Box to move all the data from the Project post type created with Pods in step 1.

First, go to Meta Box > Post Types and click Add New. Fill in the information for the new post type, and note that its slug must be the same as in Pods.

Create a custom post type with Meta Box plugin

Once you finish it, the new custom post type will show up in the Admin Menu on the Dashboard. When you visit the new post type, you will see all the old posts of the Project post type that you created with Pods previously.

Posts in the Project post type

Especially, the post information such as post title, post content, ... is still kept.

Post data in the Project post type is still kept.

However, you just move the post content only, so now let’s migrate the custom fields data in step 3!

Step 3: Create Custom Fields and Move Their Data from Pods to Meta Box

Go to Meta Box > Custom Fields > Add New to create new fields corresponding to the fields in Pods.

Pods and Meta Box support many different fields. Therefore, every time you add a new field with Meta Box, it must have the corresponding field type. For example, the corresponding field type of paragraph text (Pods field) is text area (Meta Box field). This makes sure that the data of custom fields are saved in the same method.

Just like in step 2, you must enter the corresponding IDs for the custom fields. You can use the different values for other information like Label. However, to make the information consistent, I recommend that you should copy exactly everything.

Create custom fields to move data from Pods to Meta Box plugin

After you created custom fields with the same ID as Pods, edit a post in the Project post type. If the custom fields look like what they were in Pods and there’s nothing wrong, everything is done!

The custom fields in the Project post type created by Meta Box plugin.
The custom fields look exactly what they were in Pods.

 

Video Tutorial

Last Words

The process isn’t difficult at all, right? From now on, you can work with custom fields and custom post types more easily, flexibly, and intuitively with Meta Box and its powerful extensions.

Meta Box plugin has many useful and interesting case studies that are updated frequently, you can read them here. In addition, if you have any questions about Meta Box plugin, leave them in the comment section, or join the Meta Box Users group!

1 thought on “How to Move All Custom Post Types and Custom Fields Data From Pods to Meta Box

  1. Good article but, as a long time Pods user, I'm curious to know how you think Meta Box is better than Pods? For me, there's a ton of stuff Pods does beyond just managing CPTs and fields (like Pods templates with its shortcodes and magic tags, addons like the new TablePress one in Pods Pro and more).

    I've only recently come across Meta Box and was wondering how it compares with Pods.

Leave a Reply

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