Custom post types are nothing more than a basic posts but have different parameters defined inside your code. Probably, you have been able to see Products, Testimonials, Features, Projects, or similar items in your WordPress Sites and thought that it would be cool if you could manage these from your MainWP Dashboard.
MainWP Custom Post Types extension allows you to manage custom post types on your child sites. To manage custom post types on your child sites, you need to have the matching Custom Post Type (CPT) on your MainWP Dashboard too. Once you register the same CPT on your MainWP Dashboard site, this extension will add the Select Sites Metabox to the Add New Item interface, and it will allow you to control where you want to publish this CPT content.
Also, support for the CPT will be added to the Manage Posts section, so you can search and manage CPT posts.
What is Matching CPT?
There are three required arguments for each CPT:
CPT Slug
CPT Plural Label
CPT Singular Label
If all three are in the match, you can say that you have the matching CPTs.
Let’s review the example of the Movies CPT. On your child site(s), you have a Movies CPT (Slug: movies, Plural Label: Movies, Singular Label: Movie). To be able to manage this CPT from your MainWP Dashboard, you need to create the same CPT your MainWP Dashboard site.
Please note that the Classic Editor plugin must be installed on MainWP Dashboard and related Child sites for the Custom Post Type extension to work correctly.
WooCommerce Products
If you want to use this extension to publish WooCommerce Products to your child site(s), it is enough to install the WooCommerce plugin on your dashboard site. The extension will automatically create support for Products.
Important Notes
MainWP Custom Post Types extension DOES NOT register CPTs on your child sites. It only allows you to manage existing CPTs. To properly use it, you need to have the same CPT on your Dashboard and Child Site(s)!
It doesn’t matter if a CPT on your child sites has been created by a plugin, registered with a snippet in the functions.php, or added by your WordPress Theme; this extension will be able to manage it as long as you can create the Matching CPT on your dashboard site.
Register Custom Post Types on Your MainWP Dashboard Site
To do this, you have two options:
Create a code snippet and add it to the functions.php
Use one of the 3rd party plugins to register CPTs on your dashboard site
After registering a CPT on your MainWP Dashboard, the MainWP Icon will be appended next to the link in the WP Admin menu, and it means that the CPT is ready to be managed through the MainWP Dashboard.
Create a New CPT Post
Login in to your MainWP Dashboard
Go to the MainWP > Extensions > Custom Post Types page
In the Custom Post Types box, you will be able to see all registered CPTs on your MainWP Dashboard
Locate the one you want to publish to your Child Site(s)
Click the Add New button
You will be prompted to the Add New screen
Enter the CPT post Title, Body, and metadata
Select your Child Sites where you want to publish
Click the Publish button
Please note that the Classic Editor plugin must be installed on MainWP Dashboard and related Child sites.
Manage Custom Post Types
The Custom Post Types extension allows you to manage WordPress posts on your Websites. It will allow you to create new CPT posts on your managed sites remotely, edit, change the status for existing CPT posts, or completely delete them.
On the MainWP > Posts > Manage page, you can easily find all existing CPT posts and manage them without of hustle of logging into each child site separately.
Login in to your MainWP Dashboard
Go to the MainWP > Posts > Manage Posts page
In the Search Options, set your search preference
Status filters will allow you to narrow down the search to selected CPT post statuses only.
The keyword field will allow you to find CPT posts where an entered word has been used.
Date Range will narrow down the search to posts that have been published in the selected date range.
Post Type menu will allow you to target a specific post type
Click the Show Posts button
Once the search is complete, a list of found posts will appear at the bottom of the page.
Please note that the Classic Editor plugin must be installed on MainWP Dashboard and related Child sites.
Edit a CPT Post
Login in to your MainWP Dashboard
Go to the MainWP > Posts > Manage Posts page
In the Search Options, set your search preferences
Click the Show Posts button
Once the list of found posts appears, locate the CPT Post you want to edit
Click the Edit action in the actions menu.
Note that the Classic Editor plugin must be installed on MainWP Dashboard and related Child sites.
View a CPT Post
Login in to your MainWP Dashboard
Go to the MainWP > Posts > Manage Posts page
In the Search Options, set your search preferences
Click the Show Posts button
Once the list of found posts appears, locate the CPT Post you want to see
Click the View action in the actions menu.
Please note that the Classic Editor plugin must be installed on MainWP Dashboard and related Child sites.
Delete a CPT Post
Move CPT Post(s) to Trash
Login in to your MainWP Dashboard
Go to the MainWP > Posts > Manage Posts page
In the Search Options, set your search preferences
Click the Show Posts button
Once the list of found posts appears, locate the CPT Post you want to delete
Click the Trash action in the actions menu.
If you need to delete multiple posts at once, before clicking the Trash action, select all posts you want to move to Trash and use the Bulk Actions menu to delete them.
Delete Permanently
Since WordPress allows you to permanently delete only posts that are currently in Trash, before you can permanently delete them, you need to send them to Trash. Once they are in Trash, the Delete Permanently action will be available.
Bulk Edit CPT posts
Login in to your WordPress Dashboard
Go to the desired Custom Post type list of posts
Locate the post and click Edit
Make the appropriate changes and select wanted Child Sits
Click the Update button
Please note that you will not be able to Bulk Edit if the CPT post was not published through MainWP Dashboard.