我正在开发一个Wordpress网站,并且我已经在php中使用$ _SESSION来处理会话。
我使用以下代码在我的主题中的function.php中启动会话。
if (!session_id()) {
session_start();
}
然后登录过程适用于所有$ _SESSION变量。我使用以下代码注销用户。
if(isset($_POST['logout-submit'])){
session_destroy();
$page_id = get_page_by_title('My Login');
wp_redirect( get_permalink($page_id->ID ));
exit;
}
注销过程正常工作并重定向到登录页面。我已将以下代码添加到页面中,以便用户无法在不登录的情况下手动访问页面。
if(!isset($_SESSION['user'])){
$page_id = get_page_by_title('My Login');
wp_redirect( get_permalink($page_id->ID ));
exit;
}
问题是当我尝试手动转到该页面时,页面加载几秒钟,浏览器显示如下。
This webpage has a redirect loop
我在这里做错了什么?