Php 如果已登录,则从登录页面重定向
我想编写一个代码,当用户访问Php 如果已登录,则从登录页面重定向,php,wordpress,Php,Wordpress,我想编写一个代码,当用户访问loginpage并已登录时,将用户重定向到特定的URL 我在这里找到了一个代码: 虽然我不知道如何将“是首页()”更改为登录页。 另外,我可以将其插入functions.php吗 <?php if (is_user_logged_in() && is_front_page() ) { wp_redirect('domain.com/pageToRedirectTo'); exit; } ?> 致以最良好的
loginpage
并已登录时,将用户重定向到特定的URL
我在这里找到了一个代码:
虽然我不知道如何将“是首页()
”更改为登录页。
另外,我可以将其插入functions.php吗
<?php
if (is_user_logged_in() && is_front_page() ) {
wp_redirect('domain.com/pageToRedirectTo');
exit;
}
?>
致以最良好的祝愿,
Andreas您可以将此代码放到您的登录页面或header.php中,以将登录的用户重定向到特定页面:
<?php
if (is_user_logged_in() ) {
wp_redirect (home_url("/yourpage") );
exit;
}
?>
不幸的是,WordPress没有附带
is\u login\u page()
功能。但是,您可以在functions.php中创建自己的函数:
然后,我将向functions.php添加以下操作挂钩:
阅读更多有关重定向模板钩子的信息。要使其更简单,只需首先检查它是一个登录页面,然后检查您必须使用的登录页面 $GLOBALS['pagenow'] 如果是,则检查用户是否已登录 如果是,则重定向它 您的完整代码如下所示:
if ( in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) ) ){
if ( is_user_logged_in()){
wp_redirect( home_url('domain.com/pageToRedirectTo/') );
exit;
}
}
希望它能对您有所帮助。您是否尝试过您所展示的有问题的代码?除非OP实现了自定义登录页面,否则将代码添加到登录页面将涉及编辑核心文件……谢谢!我最终使用了您的解决方案,但有一点不对劲,因为我的登录页面不在普通的wp-login.php页面上,它工作得非常好:函数redirect_logged_in_user(){if(is_user_logged_in()&&is_page('login'){wp_redirect(home_url('/website url/'));exit;}
function redirect_logged_in_user() {
if ( is_user_logged_in() && is_login_page() ) {
wp_redirect( home_url('/pageToRedirectTo/') );
exit;
}
}
add_action( 'template_redirect', 'redirect_logged_in_user' );
if ( in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) ) ){
if ( is_user_logged_in()){
wp_redirect( home_url('domain.com/pageToRedirectTo/') );
exit;
}
}