I’ve seen this question posted before but not exactly trying to achieve what I want.
Basically what I want is:
If user is not logged in AND is on -this page- OR -this page- OR -this page,
redirect him to -this page- (which is a custom registration page)
I’m tweaking this piece of code, but it’s not working. I’ll appreciate any type of guidance.
<?php
function redirect_non_logged_in(){
// if user is not logged and is on this pages
if( !is_user_logged_in() && is_page( array( 250, 253 ) ) {
//This redirects to the custom login page.
wp_redirect(site_url('/user-registration'));
exit();
}
}
add_filter('get_header','redirect_non_logged_in');
?>
Your function is fine, but
'get_header'
it’s too late.Use
template_redirect
instead:Be sure to not include ‘user-registration’ page id in
$restricted
array or you’ll experience an endless redirect…Install page restrict https://da.wordpress.org/plugins/pagerestrict/
In settings choose login form show no
insert link in restriction message:
<a href="https://your login page/">Login</a>
to view this page/post