Skill level: Beginner–Intermediate Time to complete: 5–10 minutes Prerequisites: A CPT created via CPT CSV Importer
What You’ll Learn
- How to reorder fields on the frontend form and admin columns
- How to mark fields as required
- How to configure confirmation emails and edit links
- What each CPT setting controls and when to use it
Overview
After creating a CPT from a CSV, two management screens give you control over how the data is presented and collected:
- Manage Fields — controls field order and required status
- Settings — controls confirmation emails and submitter edit permissions
Both are accessed from Tools → CPT CSV Importer → Registered Types.
Accessing the Management Screens
- Go to Tools → CPT CSV Importer
- Scroll to the Registered Custom Post Types table at the bottom
- Find your CPT in the list
- Click Manage Fields or Settings in the Actions column
Manage Fields
What This Screen Controls
The field order you set here determines:
- The sequence of fields on the frontend submission form
- The sequence of custom columns in the admin post list table
Getting the order right matters — on a frontend form, logical grouping and flow affects completion rates. In the admin list table, showing the most important columns first makes scanning large datasets much faster.
How to Reorder Fields
Fields are displayed as a sortable list. To reorder:
- Hover over the drag handle (⠿ icon) on the left of any field row
- Click and drag the row to your desired position
- Release to drop it

The Post Title field is always locked at the top — it cannot be moved.
Click Save Field Order when you’re happy with the arrangement.
Marking Fields as Required
Each field row has a Required checkbox on the right. Check it to make that field mandatory on the frontend submission form.
If a visitor submits the form without filling in a required field, they’ll see an error and the form will not submit.
Notes:
- The Post Title field is always required regardless of this checkbox
- Required validation applies to the frontend form only — CSV imports are not affected
- For taxonomy fields, required means at least one term must be selected
Field Information Shown
Each row in the list displays:
| Column | Description |
|---|---|
| Drag handle | Click and drag to reorder |
| Field name | The human-readable label (from the original CSV header) |
| Type badge | Title / Taxonomy / Meta |
| Key | The internal identifier (taxonomy slug or meta key) |
| Required | Checkbox — check to make mandatory on frontend form |
CPT Settings
What This Screen Controls
The Settings screen for each CPT has two checkboxes that control post-submission behaviour:
| Setting | Controls |
|---|---|
| Confirm Submission | Whether a confirmation email is sent to the submitter |
| Allow Editing | Whether submitters receive a private link to edit their record later |
Confirm Submission
When checked:
- After a successful form submission, the plugin looks for a meta field with “email” in its key name (e.g.,
contact_email,user_email,email_address) - If found, a confirmation email is sent to that address
- The email contains a summary of what was submitted (all field labels and values)
- If Allow Editing is also enabled, the email also contains a private edit link
When unchecked:
- No confirmation email is sent to the submitter
- Allow Editing is automatically disabled (you cannot send edit links without sending emails)
Requirement: Your CPT must have at least one meta field whose key contains the word “email”. If no such field exists, confirmation emails cannot be sent even if this setting is enabled.
Allow Editing
When checked:
- Every new submission generates a unique 48-character token
- The token is stored in the database as private post meta (
_cpt_edit_token) - The confirmation email includes a private URL containing this token, e.g.:
https://example.com/your-form-page/?edit_token=a3f4b9c2d1e0... - Visiting the edit link pre-fills the form with the submitter’s data
- Submitting the pre-filled form updates the existing post — it does not create a new one
- An “updated” confirmation email is sent after a successful edit
When unchecked:
- No edit token is generated
- No edit link appears in confirmation emails
- Submitters cannot modify their records (except through you or the WordPress admin)
Dependency: Allow Editing requires Confirm Submission to be enabled. If you uncheck Confirm Submission, the Allow Editing checkbox is automatically disabled on this screen.
Configuring Confirmation Emails: Step-by-Step
Step 1 — Ensure You Have an Email Field
Your CPT needs a meta field with “email” somewhere in the key name. If you created your CPT from a CSV, check whether you had a column like “Email Address” or “Contact Email”.
To verify:
- Go to Tools → CPT CSV Importer → Registered Types
- Look at the Meta Fields column for your CPT
- Confirm a field like
contact_email,email, oruser_emailis listed
If you don’t have one, you’ll need to recreate the CPT with an email column in your CSV.
Step 2 — Enable Confirm Submission
- Go to Settings for your CPT
- Check Confirm Submission
- If you also want edit links, check Allow Editing
- Click Save Settings
Step 3 — Test with a Submission
- Navigate to the page with your
[cpt_submit_form]shortcode - Fill in the form, including a real email address in the email field
- Submit the form
- Check your inbox for the confirmation email
If the email doesn’t arrive, see the Troubleshooting section below.
Understanding the Email Content
Confirmation Email (New Submission)
Subject: Thank you for your Business Listings submission
Thank you for your submission. Here is a summary of the information you provided:
Business Name: Acme Widget Co.
Category: Tools
Phone Number: 01234 567890
Contact Email: owner@acme.com
Website: https://acme.com
[If Allow Editing is on:]
You can edit your submission at any time using this private link:
https://example.com/submit-page/?edit_token=a3f4b9c2...
Please do not share this link with others.
Update Email (After Editing)
Subject: Your Business Listings record has been updated
Your submission has been updated. Here is a summary of your current information:
Business Name: Acme Widget Co.
Category: Tools
Phone Number: 01234 999999
Contact Email: owner@acme.com
Website: https://acme.com
Admin Notification Email
Sent to the site’s admin email on every new submission (not on edits):
Subject: New Business Listings submission: Acme Widget Co.
A new Business Listings has been submitted.
Business Name: Acme Widget Co.
Category: Tools
Phone Number: 01234 567890
Contact Email: owner@acme.com
Website: https://acme.com
Edit this submission:
https://example.com/wp-admin/post.php?post=42&action=edit
Practical Configuration Scenarios
Scenario 1: Open Directory, No Emails
Use case: A business directory where you import data yourself and don’t need a frontend form yet.
Settings:
- Confirm Submission: ❌
- Allow Editing: ❌
Shortcode: Not needed until you want public submissions.
Scenario 2: Public Submissions, Admin Review Only
Use case: A public event calendar where anyone can submit an event for admin review, but you don’t want to send submitters any email.
Settings:
- Confirm Submission: ❌
- Allow Editing: ❌
Shortcode:
[cpt_submit_form post_type="events" show="all"]
Admins receive notifications. Submitters see a success message but get no email.
Scenario 3: Full Directory with Self-Service Editing
Use case: A business directory where listings need to stay up to date. Owners should be able to edit their own listing at any time without contacting you.
Settings:
- Confirm Submission: ✅
- Allow Editing: ✅
CPT fields: Must include an email field (e.g., contact_email)
Shortcode:
[cpt_submit_form post_type="business_listings" show="all"]
Each submitter gets a confirmation email with their listing details and a permanent edit link they can bookmark or save.
Scenario 4: Members-Only Submission Form
Use case: A resource library where only logged-in members can contribute.
Settings:
- Confirm Submission: ✅ (if you want receipts)
- Allow Editing: ✅ (if contributors should update their own resources)
Shortcode:
[cpt_submit_form post_type="resources" show="logged_in"]
Anonymous visitors see nothing where the form would be. Logged-in users see the form; the email field (if present) is pre-filled with their account email and locked.
Field Order and Its Impact
The field order set in Manage Fields affects two places:
Frontend Form Sequence
Fields appear in the order you define. Best practice:
- Put the most important, identifying field (usually the title) first — it’s locked there automatically
- Group related fields together
- Put optional or supplementary fields last
For a business directory:
1. Business Name (title) — always first
2. Category (taxonomy) — key filter field, put it high
3. Contact Email (meta) — needed for confirmation, put early
4. Phone Number (meta)
5. Website (meta)
6. Description (meta) — secondary info, place later
Admin List Table Columns
The same order controls which columns appear first in your WordPress admin post list. Put your most-scanned fields first — things like status fields, categories, and key identifiers that help you quickly assess each record at a glance.
Troubleshooting
Confirmation emails are not being received
- Check Confirm Submission is enabled in Settings
- Verify the CPT has a meta field key containing “email”
- Check the test submission actually included a value in the email field
- Verify
wp_mail()is working on your server — try an SMTP plugin like WP Mail SMTP - Check your spam folder
Edit links lead to a blank form (not pre-filled)
- The edit token in the URL doesn’t match any post — verify the token was saved by checking the post’s custom fields in the admin
- The shortcode page URL in the email might be wrong — check the form page is still at the same URL
“Allow Editing” checkbox is greyed out
- Allow Editing requires Confirm Submission to be enabled first — check the Confirm Submission box first
Changes to field order aren’t reflected on the frontend form
- Clear any page caching (from a caching plugin or your host’s CDN)
- Verify you clicked Save Field Order before leaving the Manage Fields screen
Required field validation isn’t working
- Ensure you’re using the shortcode on a page that’s loading the plugin’s inline CSS and JS
- Try disabling other plugins temporarily to check for JavaScript conflicts
Next Steps
- Getting Started: Import or Create a CPT from CSV — set up your CPT and import data
- Frontend Form: Collecting Submissions from Visitors — learn how the shortcode form works in detail
