← All posts

Setting up your first listing submission form in Listora

Step-by-step guide to configuring Listora's frontend submission wizard: field selection, listing types, sign-in, draft auto-save, and the moderation settings that keep submission quality high without overwhelming you.

The frontend submission form is where your directory either works or does not. A form that is too long loses submitters halfway through. A form with the wrong fields produces listings that are incomplete or inconsistent. A form with no spam controls floods your moderation queue with junk.

Listora’s submission wizard ships with defaults that work for most directories - but the decisions you make during initial configuration determine the quality of submissions from day one. This post walks through each setting with the reasoning behind it.

What the frontend wizard does

The frontend submission wizard is the form your listing submitters use. It is separate from the admin backend - it lives on a public page on your site and is open to any signed-in member. Logged-out visitors see a login or register prompt.

What it handles out of the box:

  • Multi-step form layout with progress indicator
  • Conditional fields based on listing type (restaurants get different fields than events)
  • Draft auto-save (submitters can return to a half-finished form)
  • A sign-in step, since every listing is tied to a member account
  • Image upload with client-side size validation
  • Map picker for the listing’s location
  • Layered anti-spam: honeypot, rate limits, keyword blacklist and a URL density cap run by default; reCAPTCHA/Turnstile and Akismet are there when you add keys or the plugin

Step 1 - Create the submission page

The setup wizard can create this page for you. To do it by hand:

  1. In WordPress admin, go to Pages - Add New.
  2. Give it a title like “Submit a Listing” or “Add Your Business.”
  3. In the page body, add the Listing Submission block.
  4. Publish the page.
  5. In Listora - Settings - General, map this page as the submission page.

Now the wizard is live. Submitters land on this page and work through the form steps.

Step 2 - Choose which fields to show

From Listora - Listing Types, open the listing type you are configuring (or create one if you have not yet - City Guide, Restaurant, Job Board, etc. are available as presets).

The field configuration panel has two sections:

Required fields - the minimum a listing needs to be published. Typically: name, category, location, and one contact method (website, phone, or email). Keep required fields to the minimum. Every additional required field is a reason a submitter abandons the form.

Optional fields - shown to submitters but not blocking publication if empty. Use for: hours, social profiles, description, amenities, price band. These enrich the listing but should not block basic submissions.

A practical minimum for most directories:

FieldRequired?Notes
Listing nameYes
CategoryYesDrives filtering
AddressYesEnables geo search
Phone or websiteYes (one of either)Contact signal
DescriptionNoEncourage but do not require
ImagesNoQuality goes up when optional, not required
HoursNoAdd as optional for service directories

Resist the urge to add more required fields to “ensure quality.” Optional fields with good copy (“Add your hours to get the Open Now badge”) produce better data than required fields that force submitters to enter placeholder text.

Step 3 - Decide who can submit

Listora has no guest path. Every submitter signs in or registers first, and logged-out visitors on the submission page see a login or register prompt. That one rule removes most throwaway-address spam, because each listing belongs to a real account you can review, suspend or contact.

If you want more friction for new accounts, combine moderation (Step 5) with the anti-spam layers (Step 6).

Step 4 - Keep draft auto-save on

Draft auto-save is on by default and worth keeping on. It saves the submitter’s progress as they fill out the form, so a browser close or accidental navigation does not lose their work.

From the submitter’s perspective: the form saves a draft every 30 seconds, and if they close the tab and come back to the submission page signed in, they pick up the draft where they left it.

This matters for longer forms - a restaurant submission with hours, cuisine, price band, and images takes 5-8 minutes to complete. Losing that to an accidental refresh loses the submitter permanently in most cases.

Step 5 - Set the moderation workflow

From Listora - Settings - Submissions, set what happens after a submission arrives:

Auto-approve vs. require admin approval. For most directories, hold for review is the right default. You see the listing before it goes live. For high-volume directories with clean submission quality, you can switch to publish immediately and rely on post-publication flagging.

Email notification to admin. Turn on email notifications so you know when a new submission is waiting. These live in Settings - Notifications. A single email per submission is the right cadence for most directories. Pro adds a daily digest for higher volume.

Rejection template. Write a standard rejection message template for listings that do not meet your quality bar. Being specific about why a listing was rejected (“Please add a working phone number or website URL”) is more useful to the submitter than a generic decline.

Step 6 - Configure the anti-spam settings

The default anti-spam layers run automatically, but two settings are worth reviewing:

reCAPTCHA / Turnstile. If you are not seeing spam submissions, you may not need to enable this - it adds friction for real submitters. If spam gets through despite the other layers, pick a CAPTCHA provider in Listora - Settings - Submissions and add its keys.

Keyword blacklist. A built-in list of spam terms rejects matching submissions. To add your own terms (casino links, adult content, competitor names stuffed into descriptions), a developer extends it with the wb_listora_antispam_keyword_blacklist filter.

The honeypot, rate limits, blacklist and URL density cap run without any configuration and catch most automated submissions. Akismet joins in once the Akismet plugin is active.

Step 7 - Test the form before you launch

Before announcing the submission form:

  1. Open the submission page in an incognito window and confirm a logged-out visitor sees the login or register prompt.
  2. Sign in as a test member (not an admin) and submit a test listing.
  3. Verify the listing appears in your moderation queue in the admin.
  4. Approve it and verify the listing appears on the public directory.
  5. Test the rejection flow: submit another test listing and decline it. Verify the rejection email sends.

Run this test every time you change the form configuration. A broken submission form is invisible to you but very visible to anyone who tries to use it.

What a clean submission setup looks like

SettingRecommended default
Who can submitSigned-in members
Draft auto-saveOn
ModerationHold for review
Admin notificationsPer submission
Spam layersDefault layers on; CAPTCHA optional

Once you have the first 20-30 real submissions through the form, you will have a clear picture of where submitters are dropping off (from the auto-save draft data), which fields are frequently empty (candidates to make optional), and whether the spam layers are holding. Adjust from there.

The submission form is the front door of your directory. Getting the configuration right before you send traffic to it is the step most directory owners skip - and the one that determines whether submissions are useful from the start.