我创建网站,我需要有不同的登录和注销用户的主页。我有一个页面“主页”,它被设置为主页,里面充满了关于我的网站和图片的信息,还有一个简单的页面“主页登录”,它被设置为BuddyPress活动流。我需要的是:-用户A正在访问网站,但他没有登录,可以将“主页”作为主页查看-用户B正在访问网站,他已登录,可以将“主页登录”作为主页查看。我试图通过将此代码插入到我的主题函数中来实现它。php:
function switch_homepage() {
if ( is_user_logged_in() ) {
$page = get_page_by_title( \'Home page logged in\' );
update_option( \'page_on_front\', $page->ID );
update_option( \'show_on_front\', \'page\' );
} else {
$page = get_page_by_title( \'Home page\' );
update_option( \'page_on_front\', $page->ID );
update_option( \'show_on_front\', \'page\' );
}
}
add_action( \'init\', \'switch_homepage\' );
但此代码有时在刷新页面或注销时开始显示注销用户的“主页已登录”。当我读到这篇文章时,因为这段代码改变了数据库中的主页。所以现在我的问题是,如何在不每次更改数据库的情况下为注销的用户提供单独的主页?
SO网友:Daniel Gronow
我目前正在使用以下代码为登录和注销的用户显示不同的主页。您只需在wordpress中更改所选页面的页面id,并将其添加到您的函数中即可。php文件:
function switch_homepage() {
if ( is_user_logged_in() ) {
$page = 898; // for logged in users
update_option( \'page_on_front\', $page );
update_option( \'show_on_front\', \'page\' );
} else {
$page = 615; // for logged out users
update_option( \'page_on_front\', $page );
update_option( \'show_on_front\', \'page\' );
}
}
add_action( \'init\', \'switch_homepage\' );
我想按用户角色设置一个不同的主页,但我很难得到我需要的解决方案。