Interested in redirection techniques for one-page themes

Two (give or take) points to consider here.

One – we don’t want anyone to see direct links in first place. Scrubbing them from admin side is quite a pain, but a post_link filter in get_permalink() (and maybe couple more filters in others) should allow to (mostly) override those.

Two – we don’t want users or search engine either to get “normal” page. In a nutshell whenever normal page is visited we want to:

  1. Check in template_redirect hook if it’s the one not to be visited.
  2. 301 (really, really mean it) redirect it to correct place (using wp_safe_redirect() for example) if so.