WordPress reindirizza alla landing page se non connessi
Sto utilizzando il seguente codice nel mio file functions.php per reindirizzare gli utenti che non hanno effettuato l'accesso a una specifica landing page
<?php
if(!is_user_logged_in()) {
wp_redirect( 'http://www.mysite.com/landingpage', 301 ); exit;
}
Il problema è che non riesco più ad accedere a wp-login o wp-admin. Ogni URL viene reindirizzato alla landing page. Esiste un modo per escludere determinati URL dal reindirizzamento?

qualcosa come:
if (
!in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php'))
&& !is_admin()
&& !is_user_logged_in()
) {
wp_redirect('http://www.mysite.com/landingpage', 301);
exit;
}
dovrebbe funzionare.
vedi http://codex.wordpress.org/Function_Reference/is_admin & Controlla se wp-login è la pagina corrente

Grazie per la risposta. Sembra che questa soluzione possa funzionare, ma sto ricevendo un errore di sintassi alla riga 5. Hai qualche idea?

ho già modificato la risposta. quelli dietro is_user_logged_in inizialmente mancavano... era quello?

<?php
if($_SERVER['REQUEST_URI'] != '.../' || $_SERVER['REQUEST_URI'] != '.../'){
if(!is_user_logged_in()) {
wp_redirect( 'http://www.mysite.com/landingpage', 301 ); exit;
}
}
Questo codice verifica se ti trovi su una pagina specifica prima di eseguire il reindirizzamento. Se la prima condizione risulta vera e l'utente non è loggato, verrà eseguito il reindirizzamento.
