Yes, you can build a WordPress directory in private and open it when it is ready. Listora Pro has a Visibility setting for exactly this, under Listora > Settings > Visibility. Pick from three modes: Public, Private and Coming Soon. Public is the default, so nothing is hidden until you choose a different mode and save.
Why care? It is a business reason. With eleven listings, a directory looks abandoned, and the first people to see it are usually the ones you most want to impress: the business owners you are about to ask to join. You get one first impression with each of them. Spending it on a half-built site is a poor trade when a single setting lets you keep the doors shut until the shelves are full.
Here the focus is that setting as a launch tool and as a lasting choice for a members-only directory. You will see what each mode shows, who gets past it, which parts of your site it covers, and where it stops. Still working out how to fill the directory before you open it? The post on getting your first listings is the companion to this one.
Key points
- Private and Coming Soon are Listora Pro features. The free plugin has no visibility setting, so a Free directory is always public once its page is published.
- Private sends logged-out visitors to the login page. Coming Soon shows everyone a splash page.
- Anyone with the
manage_listora_settingscapability, which administrators have, always sees the full directory.- You choose whether the mode hides only the directory or the whole front end.
- Treat it as an access gate, not a search-engine setting, and do not rely on it to control indexing.
What do the three modes do?
Each mode answers a different question about who should see the directory right now.
- Public is the default. Everyone sees the directory, as on any normal site.
- Private is for a directory that only signed-in people should see. Logged-out visitors who open a directory page are redirected to the WordPress login page, and after signing in are sent back to the page they asked for.
- Coming Soon is for a directory that nobody outside your team should see yet. Visitors get a short splash page instead of your directory pages, headed “Our Directory is Coming Soon!”, with a link back to the rest of the site.
What matters most is what happens to a logged-in member. In Private mode they get in. In Coming Soon mode they do not: the page is shown to everyone who cannot manage Listora settings, and that includes subscribers and listing owners who have signed in. Think of Coming Soon as a closed door, and Private as a door with a lock that members hold the key to.
Each mode ends up with a natural job. Coming Soon is for the weeks you spend importing and checking listings. For a beta with invited people, or for a directory that is meant to stay behind a login, Private fits.
Which parts of the site does it cover?
On the same screen, a second choice labelled Applies To deserves a minute of thought.
- Directory only hides the directory. Listings, directory pages, member listing tabs, listing search and the API are covered. The rest of your site stays public.
- Whole site hides every front-end page, not just the directory.
On a fresh install the scope is Directory only, a default that suits the common case of a directory that is one part of a larger site, where you still want a public blog, an about page and a contact form while the listings are being prepared.
Sites that were already Private or Coming Soon before Pro 1.8.0 were gating the whole front end at the time, so the update pins them to Whole site instead of exposing their other pages by surprise. When you inherit a site, check the Applies To setting before you assume what visitors can see.
What counts as a directory page is wider than it first sounds. Any request counts as part of the directory if it is a listing or a need, a listing archive, a category or location archive, a programmatic landing page, a member’s Listings tab on a community profile, or any post or page that renders a Listora block or a [listora] shortcode. Even though it is an ordinary page, a front page built from a Listing Grid block is therefore covered. Here the code is written to be generous, because the mistake that matters is leaving a directory page reachable while you believe it is hidden.
Who still gets in?
Admins, always. They get in through the manage_listora_settings capability, which the administrator role holds. Any user with that capability sees the real directory in every mode, which is how you keep building and checking while everyone else sees the splash.
Private mode has one further rule: a signed-in user must also hold the standard read capability, which every default WordPress role has, so in practice any logged-in account gets through. Should a signed-in account somehow lose read, it gets a plain “Access denied” page with a 403 status instead of a redirect, which avoids a login loop.
Think about this part before you promote Private as “members only”. Private checks that a person is logged in, and does not check what kind of member they are or whether they have paid. When your site lets anyone register, anyone can register and walk in. It may be exactly what you want, since a free account is a light screen and it gives you an email address for every reader. For a smaller circle, close or moderate registration on your side, because the Listora setting does not do it for you.
What stays hidden from a visitor who is shut out?
Gating the page URL alone would leak. Other routes carry listing data to a browser, and the code closes the ones it knows about. For a visitor the directory is hidden from, the following are all withheld:
- Directory pages, including taxonomy archives and landing pages.
- Listora blocks and shortcodes, which render nothing wherever they turn up, including when one page’s content is printed by another template or fetched through the API.
- Listora’s own API, and WordPress’s API endpoints for listings and their categories, which answer with a “not public yet” error. That is a 401 for a logged-out request and a 403 for a logged-in one.
- Listings and needs in the site’s search and in the REST search endpoint.
- oEmbed cards for a listing URL.
- Listing items in BuddyPress activity streams, for sites that run it.
Of these, the block and shortcode point is the one that catches people out. Any page that carries a Listing Grid counts as a directory page, so with the scope set to Directory only, a homepage built around that grid is gated whole: it is not left public with a hole in it. For a public front page during the build, keep directory blocks off it, and check every mixed page in a private window before you launch.
What keeps working while it is hidden?
Even hidden, a directory still has to talk to people who are not logged in. Some routes stay open on purpose, because each carries its own credential and blocking them would break something the owner did not intend to break:
- Links in emails that confirm a submission or an email change.
- Payment receipt links and the payment provider’s callback.
- Unsubscribe links in notification emails.
- Sign-in routes an app needs to log in.
WordPress’s login screen itself is never locked either, since gating it would lock every member out for good. Because of these exceptions, a paid listing can complete during a private beta and an invited tester can still confirm their email. Each one checks its own token or signature, so leaving them open does not expose the directory.
How would you actually run a launch with it?
Here is one sequence that fits the way these modes behave. Its business is made up, a regional directory of boarding kennels, and the numbers are examples, not results.
- Set Coming Soon with scope Directory only. Your blog and contact page stay live, and visitors who follow a directory link see the splash. You keep working as an admin.
- Fill the directory. Import and clean listings as covered in the posts on first listings and on launching a niche directory with demo data. Say you want forty good listings before anyone outside sees it.
- Test the way a stranger sees it. Open a private window, and visit the directory logged out. Then sign in as a plain subscriber and visit again. In Coming Soon mode, both should show the splash.
- Switch to Private for a preview. Create accounts for a few of the businesses you plan to approach, so they see the directory behind a login. Subscribers now get in, and strangers are sent to log in.
- Switch to Public on the day you announce it, and check the site in a private window once more.
In stages two to four, the point is that nobody outside meets an empty directory. Invited in stage four, the kennel owner sees forty real listings, and that changes the conversation from “will this ever have traffic” to “where is mine”.
This flow has no automatic switch. I found no setting for a launch date or a timer, so changing the mode is something you do by hand. Put it on the checklist for launch morning, next to the announcement email.
Is Private mode a good fit for a lasting members-only directory?
Sometimes, yes. Some directories are private by nature: a company’s list of approved suppliers, an alumni network, a club’s list of trusted trades, a neighbourhood list where people share who they use. For those, Private is not a launch stage but the finished product.
Take the pet directory with a community around it, which the post on a pet directory with a community around it describes. Neighbours might want recommendations for a vet or a dog walker that is not open to the whole internet. Private mode on the directory, with the sign-up rules you choose on the community side, gives that group a recommendation list that only signed-in people can read. The scenario is made up for illustration, but the mechanics are the ones above.
Two practical notes apply to a long-term private directory. Submission already needs an account, so the people who add listings are signed in either way. And the directory is still a normal part of your WordPress site, so you can run a public front page and a private directory side by side with the Directory only scope.
What does it not do?
Stating the limits matters, because the setting is easy to over-read.
- Not a search-engine control. It decides who can see pages, and promises nothing about what search engines index or keep. The Coming Soon splash is sent as an ordinary page, not as a temporary-unavailable response. When indexing matters, treat it as a separate job in your SEO tooling.
- Not a paywall. Private checks for a login, not for a plan or a membership level.
- No email capture. The splash page is plain: a heading, one sentence and a link back to the site. There is no sign-up form on it.
- No editable splash text. I found no setting for the wording, so the message is fixed.
- No scheduling. No countdown, no launch date.
- Not in Free. The visibility modes ship in Pro, and a Free directory is always public once its page is published.
When the default behaviour does not fit a project, the filters in the next section change parts of it.
For developers: three filters
Building sites for clients? The gate has filters that change its behaviour without editing the plugin:
wb_listora_pro_visibility_should_gate
wb_listora_pro_visibility_hide_from_search
wb_listora_pro_visibility_rest_allowed_routes
- The first decides whether a given request is gated. Return true to gate it, and false to let it through. Returning true for every request brings back the old whole-front-end behaviour.
- The second controls whether listings are removed from site search while the directory is hidden. Return false to keep them searchable.
- The third lists API route prefixes that stay open while the directory is hidden. Add a route there if a companion tool must still reach it.
Choosing between the modes
Remember this above all. The modes let you open the directory in stages: Coming Soon while you build, Private while you invite, Public when you announce. The first impression then lands on the day you choose.
Before you flip the mode, read the free versus Pro page to confirm what ships where, and try the live demo to see what a finished directory looks like to the people you will invite. When the listings are in, the directory is ready for its first visitors and the setting that kept it private is one click from Public.