0

I'm working on a website that is still being built; however, the client would like to launch a landing page while it is being finished. What is the easiest way to make it so all the pages of the site are hidden from view except for the landing page to non-logged in users? (For logged-in users I'd like it to function normally so I can finish building the site.) I'd like the hidden pages to show a simple message or 404 in case someone happens to navigate to one, but nothing else (not the header, footer or menu). I figured there'd be a plugin for this, but alas, that doesn't seem to be the case. Any help is appreciated!

2
  • 1
    What I usually do in cases like this is add a condition in header.php that checks for logged in users, if user is not logged in I do get_template_part('some-template') then die;, in the template I create all my code, usually hard coded without wp_head() and wp_footer() (because this template doesn't contain much code and don't need to load WP resources). Oct 6, 2021 at 6:13
  • 1
    lookup a "coming soon" plugin. You're missing an opportunity for SEO building if you're not redirecting correctly
    – rudtek
    Oct 6, 2021 at 15:17

1 Answer 1

1

I'd go with a similar approach as @Buttered_Toast:

  • Create a template for a specific page (see template hierarchy, especially single page) and set this one as the home page. This then is your "landing page". Do not forget to remove all references to wp_head, wp_footer, etc.
  • Add a condition into the header for all other pages/posts that checks for is_user_logged_in() and do a wp_redirect() to the home page, if the user is not logged in. This is a nicer solution than a message or a 404, IMHO.

This way you can easily continue working, but the landing page will be there.


Sidenote: I would NOT recommend to develop on a site that is publicly available. All your debug messages will be exposed. Create a development environment (if nothing else, take a subfolder and lock it with htpasswd), develop there, and if you are ready, migrate everything to the production system.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.