WordPress Development Asked by Peter VARGA on December 17, 2021
Suppose I have these WordPress pages:
page-A
page-B
page-C
and a published page page-main
.
My question:
The clients see and access only page-main
which is in the end virtual – it doesn’t exist. Accessing this page-main
page should redirect to one of the above mentioned pages A-C, depending on some conditions which are not important for this question.
How can I achieve it?
So you need this to happen before Wordpress has output anything at all, otherwise you won't be able to send a redirect.
A way to achieve this is with the template_redirect
hook, documented here: https://codex.wordpress.org/Plugin_API/Action_Reference/template_redirect
The example from that docs page is more or less exactly what you want. I've edited it a little bit for your question:
function my_page_template_redirect() {
if ( is_page( 'page-main' ) ) {
if ( $some_condition ) {
wp_redirect( home_url( $pageA ) );
} else {
... other caeses here with redirects to other pages
}
}
}
add_action( 'template_redirect', 'my_page_template_redirect' );
You'd need to add that to your functions.php or a plugin.
Answered by mozboz on December 17, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP